sfs(small file storage)-小文件存储系统

一、简介

使用 Docker 搭建开发环境

公司的线上机器装的是 CentOS 6.3, 系统自带的 gcc 套件版本太老旧(gcc 4.4.7),我们开发代码已经使用 C++ 11 标准,所以之前在虚拟机的 CentOS 6.3 上编译了 gcc 5.3.

nginx least_conn 解决长耗时请求的负载均衡问题

我们有一些后端服务器专门用于音视频的处理,这些任务耗时至少在5s,之前用默认的 RR 均衡算法,总是导致后端服务器堆积大量请求,系统 Load 居高不下. 换了 least_conn 均衡算法之后,整个后端服务器的负载变得平衡了.

tomb - 管理 goroutine

日常开发中,最常见的就是处理并发问题,比如要完成一个业务操作,需要读取多个数据源(Map),得到所有数据之后再进行汇总(Reduce)操作,最终完成业务操作.如果某个数据源读取操作失败,整个业务操作当失败处理.

limitworker - 动态增减worker数量

日常工作中时常需要写一些一次性并发执行的任务,但又需要根据相关资源的负载情况对并发任务数进行增减,通常最简单的方法就是停止进程,修改配置,再重启.这样做有点麻烦的是需要记录当前处理进度,避免再次重启的时候重复执行已完成的操作.

lua-resty-validator

之前项目中用到 openresty 作为 Web Api 的开发平台, 用 openresty 很适合开发以 http 接口形式提供的服务. openresty 可以使用 lua 进行逻辑控制,加上完备的组件driver(redis, mysq...

VIM 安装 Golang 插件

1. 安装 syntastic参考 Make Vim as C/C++ IDE

XiaoXin 13 Air, Ubuntu 16.04 重新映射键盘

最近换了联想小新 13 Air,携带轻便多了,但键盘的布局给写代码带来很多不便,尤其是 向上键 与 右Shift键的位置,为了提高生产效率,得改!

Arduino 超声波测距

超声波通过发送一束超声波,再计算接收时的时间间隔 sec,就可以通过公式距离 = (sec * 340)/2 计算出来。不过实际上温度,湿度都会造成结果误差,但在精度要求不高的场合,简单的计算就可以满足。超声波收发模块:

Arduino 读写 PCF8591 芯片

PCF8591 芯片支持4通道 8bit ADC,1通道 8bit DAC,它提供 I2C 接口进行数据读写。