redis 执行命令流程以及repl backlog 复制挤压缓冲区源码
1 首先通过eventloo死循环配合I/O多路复用监听有网络事件的socket
2 通过I/O多路复用拿到socket的fd后,调用对应的回调函数readQueryFromClient
3 通过read函数读取内容到querybuf (默认为1GB)
4 如果当前client是master则将querybuf的内容拷贝到pending_qurybuf(这个是主从同步的replication buffer,redis将会吧pending_qurybuf里面的内容同步给salve)
5 根据redis的res
原创
2022-04-09 12:37:12 ·
1131 阅读 ·
0 评论