文先生的博客
求职,坐标深圳。(wenfh2020@126.com)
主页
归档
文集
搜索
文集
algorithm
2024-01-08 Mon.
[算法] 一致性哈希算法
2020-03-11 Wed.
算法 lru c++ 实现
2019-12-09 Mon.
[算法导论] 堆排序
2019-11-29 Fri.
[算法导论] 归并排序
2019-11-21 Thu.
[算法导论] 快速排序
c/c++
2024-10-15 Tue.
[C++] Google Authenticator 算法实现
2024-08-22 Thu.
[C++] 使用时间轮实现对象的操作频率限制
2023-12-28 Thu.
[C++] 浅析 std::share_ptr 内部结构
2023-12-21 Thu.
[C++] 深入探索 C++ 多态 ④ - 模板静态多态
2023-12-10 Sun.
[C++] 右值引用
2023-09-10 Sun.
[muduo] vscode + gdb 调试 muduo
2023-08-25 Fri.
[C++] 深入探索 C++ 多态 ③ - 虚析构
2023-08-22 Tue.
[C++] 深入探索 C++ 多态 ② - 继承关系
2023-08-12 Sat.
[转载] What is the VTT for a class
2023-08-01 Tue.
[stl 源码分析] 浅析 std::vector::emplace_back
2023-07-21 Fri.
[QT] 浅析信号与槽
2023-02-13 Mon.
[C++] C++ 有什么好用的线程池?
2022-12-27 Tue.
[C++] 深入探索 C++ 多态 ① - 虚函数调用链路
2022-04-08 Fri.
[C++] 浅析 C++11 移动语义
2022-02-23 Wed.
[stl 源码分析] std::sort
2022-02-19 Sat.
(ubuntu) vscode + gdb 调试 c++
2021-11-14 Sun.
[知乎回答] 如何设计内存池?
2021-04-20 Tue.
[stl 源码分析] std::vector::push_back 内存扩充
2021-04-09 Fri.
[stl 源码分析] std::list::size 时间复杂度
2021-04-08 Thu.
基于 stl map 的定时器(C++)
2021-04-08 Thu.
剖析 stl + glibc “内存泄漏” 原因
2020-11-01 Sun.
计算两个集合差集(C++)
2020-10-28 Wed.
protobuf / json 数据转换(C++)
2020-10-20 Tue.
[多线程] 条件变量 pthread_cond_wait
2020-10-13 Tue.
c++ 分割字符串函数
2020-08-11 Tue.
cryptopp 加密库使用
2020-08-04 Tue.
gettimeofday 获取本地时间
2020-07-30 Thu.
jemalloc 性能测试
2020-06-04 Thu.
[数据库] 自动代码工具 - 分析 mysql 脚本(*.sql)生成 C++ 源码
2020-05-28 Thu.
libev 源码理解方式
2020-04-16 Thu.
gcc/make/Makefile 源码编译
2020-04-12 Sun.
strncpy 安全吗?
2020-03-08 Sun.
[多线程] 剖析嵌套式死锁问题
2020-03-01 Sun.
printf 问题的思考
2020-02-15 Sat.
反汇编查看宏函数/函数调用原理
2020-01-14 Tue.
Linux 下实现 itoa 转二进制
2018-07-03 Tue.
类型强制转换异常跟踪
2018-02-13 Tue.
c++ 语言基础知识
2018-02-12 Mon.
stl 基础知识
2018-02-11 Sun.
c 语言基础知识
2017-10-28 Sat.
C++ 日志宏定义
co_kimserver
2021-03-25 Thu.
[co_kimserver] libco mysql 连接池
2021-03-25 Thu.
[co_kimserver] co_kimserver 简介
database
2023-12-29 Fri.
[数据库] sqlite3 模糊查找效率
2021-03-17 Wed.
[数据库] mysql 常用命令配置
2020-06-04 Thu.
[数据库] 自动代码工具 - 分析 mysql 脚本(*.sql)生成 C++ 源码
2019-11-07 Thu.
[数据库] mysql 数据库创建,删除,导入,导出数据 shell 脚本
epoll
2021-11-22 Mon.
[知乎回答] socket的任意event都会导致epoll_wait的惊群效应吗?
2021-11-21 Sun.
[知乎回答] Nginx为啥使用ET模式Epoll?
2021-11-20 Sat.
[知乎回答] epoll的EPOLLEXCLUSIVE真的能防住惊群吗?
2021-11-13 Sat.
[知乎回答] poll/epoll函数中的各种event分别应该在什么时候监听并处理呢?
2021-03-08 Mon.
深入理解 epoll 回调用户数据
2020-06-11 Thu.
[内核源码] epoll lt / et 模式区别
2020-04-23 Thu.
[内核源码] epoll 实现原理
2020-04-22 Wed.
[内核源码] epoll 源码实现-预备知识
2020-04-14 Tue.
epoll 多路复用 I/O工作流程
2020-04-09 Thu.
[redis 源码走读] 事件 - 文件事件
golang
2021-08-10 Tue.
简单的 http 通信校验(golang)
2020-11-05 Thu.
物联网数据通信 mqtt - mosquitto
2020-07-23 Thu.
简单说说 golang 的主要优点
2019-06-22 Sat.
golang & viper config & zookeeper
2018-07-29 Sun.
压测 redis 消息队列(golang)
hiredis
2021-03-14 Sun.
[hiredis 源码走读] redis pipeline
2020-09-07 Mon.
[kimserver] libev + hiredis redis 异步连接池
2020-08-04 Tue.
[hiredis 源码走读] 异步回调机制剖析
2018-06-17 Sun.
hiredis + libev 异步测试
kernel
2022-01-22 Sat.
[内核源码] tcp 连接队列
2021-12-29 Wed.
[内核源码] Linux 网络数据接收流程(TCP)- NAPI
2021-12-16 Thu.
tcp + epoll 内核睡眠唤醒工作流程
2021-12-16 Thu.
学习 linux 内核一阶段小结
2021-12-03 Fri.
搭建 Linux 内核网络调试环境(vscode + gdb + qemu)
2021-11-22 Mon.
[知乎回答] socket的任意event都会导致epoll_wait的惊群效应吗?
2021-11-21 Sun.
[知乎回答] Nginx为啥使用ET模式Epoll?
2021-11-13 Sat.
[知乎回答] poll/epoll函数中的各种event分别应该在什么时候监听并处理呢?
2021-10-12 Tue.
探索惊群 ⑥ - nginx - reuseport
2021-10-11 Mon.
探索惊群 ⑤ - nginx - NGX_EXCLUSIVE_EVENT
2021-10-10 Sun.
探索惊群 ④ - nginx - accept_mutex
2021-09-29 Wed.
探索惊群 ③ - nginx 惊群现象
2021-09-27 Mon.
探索惊群 ② - accept
2021-09-05 Sun.
[内核源码] Linux 系统调用(x86_64)
2021-08-19 Thu.
[内核源码] 网络协议栈 - write (tcp) 发送数据
2021-08-17 Tue.
[内核源码] 网络协议栈 - tcp 三次握手状态
2021-08-07 Sat.
[内核源码] 网络协议栈 - connect (tcp)
2021-07-28 Wed.
[内核源码] 网络协议栈 - accept (tcp)
2021-07-21 Wed.
[内核源码] 网络协议栈 - listen (tcp)
2021-07-17 Sat.
[内核源码] 网络协议栈 - bind (tcp)
2021-07-13 Tue.
[内核源码] 网络协议栈 - socket (tcp)
2021-07-09 Fri.
[内核源码] list 链表
2021-06-23 Wed.
vscode + gdb 远程调试 linux 内核源码(附视频)
2021-05-19 Wed.
gdb 调试 Linux 内核网络源码(附视频)
2021-04-19 Mon.
学习 Linux 内存分配
2020-06-11 Thu.
[内核源码] epoll lt / et 模式区别
2020-04-23 Thu.
[内核源码] epoll 实现原理
2020-04-22 Wed.
[内核源码] epoll 源码实现-预备知识
kimserver
2020-12-02 Wed.
[kimserver] 统计负载信息
2020-12-02 Wed.
[kimserver] 配置文件 config.json
2020-11-08 Sun.
[kimserver] zookeeper-client-c 接入流程思考
2020-10-27 Tue.
[kimserver] 分布式系统 - 一致性哈希算法
2020-10-24 Sat.
[kimserver] 分布式系统 - 节点发现
2020-10-23 Fri.
[kimserver] 父子进程传输文件描述符
2020-10-23 Fri.
[kimserver] 分布式系统-多进程框架节点通信
2020-09-07 Mon.
[kimserver] libev + hiredis redis 异步连接池
2020-08-30 Sun.
[kimserver] C++ 异步非阻塞 Mysql 连接池
libco
2021-11-18 Thu.
[知乎回答] 协程如何做到切换到另一个函数还能完成原函数的IO?
2021-04-05 Mon.
[libco] 删除协程的正确姿势
2021-03-30 Tue.
[libco] libco 定时器(时间轮)
2021-03-25 Thu.
[co_kimserver] libco mysql 连接池
2021-03-25 Thu.
[co_kimserver] co_kimserver 简介
2021-03-08 Mon.
[libco] 协程栈空间
2021-02-24 Wed.
[libco] libco 不干活也费 CPU
2020-12-28 Mon.
[libco] libco 工作流程
2020-12-27 Sun.
[libco] 协程调度
2020-12-17 Thu.
[libco] 协程切换理解思路
2020-12-07 Mon.
[libco] 协程库学习,测试连接 mysql
muduo
2023-09-10 Sun.
[muduo] vscode + gdb 调试 muduo
network
2023-10-08 Sun.
浅析 HTTPS TLS(ECDHE)协议的握手流程(图解)
2021-10-13 Wed.
探索惊群 ⑦ - 文件描述符透传
2021-09-25 Sat.
探索惊群 ①
2021-08-10 Tue.
简单的 http 通信校验(golang)
2021-07-11 Sun.
字节序转换关系
2021-05-08 Sat.
重温网络基础
2020-07-07 Tue.
HTTP 状态码
2020-06-11 Thu.
高性能服务异步通信逻辑
2020-04-14 Tue.
epoll 多路复用 I/O工作流程
2020-04-12 Sun.
抓包分析 tcp 握手和挥手
nginx
2021-11-21 Sun.
[知乎回答] Nginx为啥使用ET模式Epoll?
2021-11-20 Sat.
[知乎回答] epoll的EPOLLEXCLUSIVE真的能防住惊群吗?
2021-10-12 Tue.
探索惊群 ⑥ - nginx - reuseport
2021-10-11 Mon.
探索惊群 ⑤ - nginx - NGX_EXCLUSIVE_EVENT
2021-10-10 Sun.
探索惊群 ④ - nginx - accept_mutex
2021-09-29 Wed.
探索惊群 ③ - nginx 惊群现象
2021-06-25 Fri.
gdb 调试 nginx(附视频)
2020-02-08 Sat.
nginx 地址对齐(ngx_align_ptr)
2020-01-21 Tue.
[nginx 源码走读] 内存池
redis
2023-12-25 Mon.
[Redis] 浅析 Redis 并发模型
2022-02-14 Mon.
延时双删(redis-mysql)数据一致性思考
2021-03-14 Sun.
[hiredis 源码走读] redis pipeline
2021-02-24 Wed.
[redis 源码走读] maxclients 最大连接数限制
2020-12-08 Tue.
[redis 源码走读] 域名解析 - getaddrinfo
2020-10-09 Fri.
[redis 源码走读] sentinel 哨兵 - 通知第三方
2020-10-01 Thu.
[redis 源码走读] redis 与 raft 算法
2020-09-27 Sun.
[redis 源码走读] sentinel 哨兵 - 故障转移
2020-09-26 Sat.
[redis 源码走读] sentinel 哨兵 - 选举投票
2020-09-07 Mon.
[kimserver] libev + hiredis redis 异步连接池
2020-08-04 Tue.
[hiredis 源码走读] 异步回调机制剖析
2020-06-15 Mon.
[redis 源码走读] sentinel 哨兵 - 主客观下线
2020-06-12 Fri.
[redis 源码走读] sentinel 哨兵 - 节点链接流程
2020-06-06 Sat.
[redis 源码走读] sentinel 哨兵 - 原理
2020-05-31 Sun.
[redis 源码走读] 主从数据复制 ②
2020-05-29 Fri.
redis 为啥这么快
2020-05-17 Sun.
[redis 源码走读] 主从数据复制 ①
2020-04-30 Thu.
[redis 源码走读] 异步通信流程-单线程
2020-04-13 Mon.
[redis 源码走读] 多线程通信 I/O
2020-04-09 Thu.
[redis 源码走读] 事件 - 文件事件
2020-04-06 Mon.
[redis 源码走读] 事件 - 定时器
2020-04-01 Wed.
redis 持久化方式 - aof 和 rdb 区别
2020-03-29 Sun.
[redis 源码走读] aof 持久化 ①
2020-03-29 Sun.
[redis 源码走读] aof 持久化 ②
2020-03-19 Thu.
[redis 源码走读] rdb 持久化 - 文件结构
2020-03-19 Thu.
[redis 源码走读] rdb 持久化 - 应用场景
2020-03-06 Fri.
[redis 源码走读] maxmemory 数据淘汰策略
2020-02-20 Thu.
[redis 源码走读] redis 过期策略
2020-02-05 Wed.
[redis 源码走读] 对象(redisObject)
2020-02-04 Tue.
[redis 源码走读] 整数集合(inset)
2020-02-03 Mon.
[redis 源码走读] 跳跃表(skiplist)
2020-01-30 Thu.
[redis 源码走读] 压缩列表(ziplist)
2020-01-21 Tue.
[redis 源码走读] 链表
2020-01-19 Sun.
[redis 源码走读] zmalloc
2020-01-15 Wed.
[redis 源码走读] 字符串(sds)
2020-01-12 Sun.
[redis 源码走读] 字典(dict)
2020-01-05 Sun.
用 gdb 调试 redis
2019-12-27 Fri.
[redis 源码走读] sentinel 哨兵 - 脑裂处理方案
2019-11-17 Sun.
redis 学习的思考
2018-07-29 Sun.
压测 redis 消息队列(golang)
2018-06-17 Sun.
hiredis + libev 异步测试
system
2021-08-13 Fri.
信号
2020-12-17 Thu.
x86_64 函数运行时栈帧内存布局
2020-12-16 Wed.
常用汇编知识
2020-04-29 Wed.
程序工作流程(Linux)
2020-03-17 Tue.
Linux 文件目录权限
2020-02-17 Mon.
程序变量内存分布(Linux)
2020-01-07 Tue.
[shell] ssh 快捷登录
2020-01-02 Thu.
fork 进程测试 copy-on-write
2019-08-12 Mon.
[shell] sed 插入多行文本
2019-02-20 Wed.
[shell] shell 常用语法
2019-02-19 Tue.
Linux 常用命令
tool
2022-04-06 Wed.
MacOS 安装使用 Docker
2021-11-11 Thu.
perf 常用方法
2021-11-09 Tue.
(Centos 7)GDB 调试 glibc(附视频)
2021-10-20 Wed.
ubuntu 20.4 常用软件安装
2021-08-14 Sat.
rsync 传输文件
2021-02-25 Thu.
Centos7 常用软件安装
2021-02-23 Tue.
MacOS 通过虚拟机(Virtual Function)安装 Centos7
2020-11-05 Thu.
tmux 常用快捷键
2020-10-24 Sat.
vscode 一键(快捷键)执行脚本命令
2020-10-20 Tue.
LLDB 使用
2020-07-30 Thu.
软件性能检测--火焰图 🔥
2019-11-18 Mon.
tmux 返回前一个 panel 快捷键
2019-11-13 Wed.
vim c++ 代码自动格式化配置
2019-03-22 Fri.
Git 常用命令场景
2019-02-19 Tue.
GDB 使用
2018-05-02 Wed.
Siege HTTP 压力测试
2017-12-22 Fri.
Centos7 vim 编码环境 (C++/golang)
2017-12-06 Wed.
ccache 优化 C++ 编译速度
zookeeper
2020-11-08 Sun.
[kimserver] zookeeper-client-c 接入流程思考
2020-10-17 Sat.
zookeeper-client-c 异步/同步工作方式
2020-10-14 Wed.
安装 ZooKeeper
2019-06-22 Sat.
golang & viper config & zookeeper
即时通讯
2021-07-08 Thu.
即时通讯方案
2020-05-20 Wed.
[即时通讯] 分布式系统-用户在线状态管理
2019-11-14 Thu.
[即时通讯] 千人群组-消息管理
2019-06-03 Mon.
[即时通讯] 视高企业协同办公系统
技术
2024-01-15 Mon.
[技术] 回顾 2023 阅读的技术书籍
2021-05-07 Fri.
我的阅读书单
2020-05-14 Thu.
Collection
2020-03-20 Fri.
商品秒杀问题的思考
2020-03-08 Sun.
[多线程] 剖析嵌套式死锁问题
2016-11-08 Tue.
文件服务器架构逻辑
知乎
2021-11-22 Mon.
[知乎回答] socket的任意event都会导致epoll_wait的惊群效应吗?
2021-11-21 Sun.
[知乎回答] Nginx为啥使用ET模式Epoll?
2021-11-20 Sat.
[知乎回答] epoll的EPOLLEXCLUSIVE真的能防住惊群吗?
2021-11-18 Thu.
[知乎回答] 协程如何做到切换到另一个函数还能完成原函数的IO?
2021-11-17 Wed.
[知乎回答] 程序员都是怎么记笔记的?
2021-11-15 Mon.
[知乎回答] 作为程序员的你,工作台是怎样的?
2021-11-14 Sun.
[知乎回答] 如何设计内存池?
2021-11-13 Sat.
[知乎回答] poll/epoll函数中的各种event分别应该在什么时候监听并处理呢?
科技
2020-09-20 Sun.
智慧农场解决方案
2020-05-13 Wed.
Macbook Pro 副屏 - Gobigger 4k 便携屏使用体验
2019-11-14 Thu.
MacBook Pro 2019 13寸 体验
2018-08-04 Sat.
“黑科技”(ipad + termius + 100 元的蓝牙键盘)
随笔
2024-04-20 Sat.
[随笔] 最好的编程语言
2021-11-17 Wed.
[知乎回答] 程序员都是怎么记笔记的?
2021-11-15 Mon.
[知乎回答] 作为程序员的你,工作台是怎样的?
2021-11-12 Fri.
[随笔] 敏捷开发
2020-09-06 Sun.
trello - 化零为整
2020-03-12 Thu.
(研发)十年工作总结 - 平凡之路
2020-02-17 Mon.
github + jekyll 搭建博客
2020-02-01 Sat.
用 Mac 第一次剪辑视频
2020-01-13 Mon.
付费自习室
2019-12-09 Mon.
早睡早起
文集
algorithm (5)
c/c++ (41)
co_kimserver (2)
database (4)
epoll (10)
golang (5)
hiredis (4)
kernel (28)
kimserver (9)
libco (11)
muduo (1)
network (10)
nginx (9)
redis (41)
system (11)
tool (18)
zookeeper (4)
即时通讯 (4)
技术 (6)
知乎 (8)
科技 (4)
随笔 (10)