你真的会用sync.WaitGroup吗
一份详细注释的go Mutex源码
带注释的源码在文章最后
golang标准库sync.Pool原理及源码简析
pool关键作用:
- 减轻GC的压力。
- 复用对象内存。有时不一定希望复用内存,单纯是想减轻GC压力也可主动给pool塞对象。
Redis(5.0.3)内存淘汰LRU/LFU
Redis(5.0.3)事件驱动与连接管理
Redis(5.0.3)定时任务serverCron
redis里很多非响应命令的功能,例如持久化、内存淘汰、复制、cluster等等,是需要设置一个定时任务来完成的。并且这里部分的定时任务的执与响应命令的执行是混在一个线程中。意味着定时任务执行过慢会影响redis的性能。
Redis(5.0.3)里一个简单请求如何被处理
set text “hello world” 从进入服务器到输出结果,整个流程是怎样的?带着这个问题来看看源码。
Redis(5.0.3)源码分析之sds对象
sds是redis中定义字符串对象,它比C中的字符串类型对象更为高效、安全。
fasthttp源码&最佳实践分析
fasthttp号称比net/http快十倍,并且更少的内存分配。性能测试可以自行执行go test -bench。
同时fasthttp也给出自己的最佳实践。个人理解这些实践也算是gopher的基本功。
让我们来看看fasthttp在源码中是如何应用这些最佳实践的。