Home

Rate Limiter in Action

OverviewThe backend systems which have lots of requests per second always need a local rate limiter to protect themself. Which “local” means that this rate limiter worked in only this process and was

Me and My Game Life

Playing games is part of my life. Actually, these games are usually referred to as video games. These days, I had finished a video game, called “Witcher 3: Wild Hunt”, which is known as one of the mo

MySQL InnoDB Locks

OverviewInnoDB is a storage engine for MySQL.After more than ten years of development, InnoDB has becomed the most common storage engine in Internet compony usages. There are lots of articles talk ov

给 Markdown 程序员的写作能力提升指南

前言最近完成了一次多次打磨的技术分享,在准备分享和进行分享的过程中,遇到了很多问题,而造成这些问题的根源,就是自己日渐低下的写作水平和表达能力。 在本篇文章中,我会先基于自己的看法,分析写作能力对程序员的作用,然后基于自己的参考和实践,给出一个比较标准的程序员写作的套路,最后给出一些常用的辅助程序员写作的软件,并分析这些软件的特点。 写作能力真的有用吗很多工科的学生会认为写作能力对个人水平的提升没

自我时间管理

Overview现在开始尝试一个更规范的自我时间管理机制。新的机制主要由三个工具支撑,番茄土豆、坚果云,VSCode。番茄土豆主要用于管理细碎的时间和待办事项,坚果云用于存储更宏观的计划和日志,而 VSCode 用于管理坚果云的文件。 制定 OKR每两个月需要制定一次个人 OKR,落实到 okr.md 文件。为了聚焦,Objective 一般定义为三个以内。Objective 需要定义 Key

在 macOS 中使用命令行打开 VSCode

VSCode 相信已经是大家的必备编辑器了,轻量,免费。在 Linux 环境中, VSCode 可以通过图标启动,也可以通过命令行启动。例如,我想在 VSCode 中打开这个文件夹,可以这样:1$ code someCodeProject 但是在 macOS 下默认是不能操作的,因为没有 code 这个程序。我们可以伪造一个: 12345678$ cat code#!/bin/bashTARGET

安装 Ubuntu Workstation 之后要做的事儿

最近自己心爱的 Dell Latitude E6430s 频繁死机,以为是硬盘问题,格式化硬盘重装系统问题依旧。硬件检查才发现是一根内存有了问题,取出问题的内存后一切正常。 但删掉的系统是需要重装的,经过一些实践后,我选择了 Ubuntu 16.04 LTS 作为我新的操作系统。 都 2019 年了,为什么还要选择老旧的 Ubuntu 16.04 呢?其实我之前试过了几个 Linux 发行版,都

那些年,我们一起改过的配置文件 -- 常见配置文件类型简介

Overview 在程序员日常开发中,配置文件是一个非常常见的需求。 配置文件可以定制程序的逻辑,一段代码生成的程序可以灵活地适应多个需求。几乎所有的程序都需要或者隐形需要配置文件,因为它们需要根据配置文件来决定在代码中使用怎样的逻辑来运行。 对于大部分的程序来说,他们需要的配置文件常常是一个 K-V 类型的结构,可以理解为一个 Key 为字符串, Value 也为字符串的一个 Map。字符串可以