redis 使用addReply系列函数发送查询结果以及错误信息给客户端。这一篇我们来研究redis是如何组织并发送这些消息的。
当网络连接准备好之后redis就会开始等待接收网络数据并处理。
还记得我们在分析createClient这个函数的时候,当conn不为空时的处理吗?
1 if (conn) {
2 connNonBlock(conn);
3 connEnableTcpNoDelay(conn);
4 if (server.tcpkeepalive)
5 connKeepAlive(conn,server.tcpkeepalive);
6 connSetReadHandler(conn, readQueryFromClient);
7...
这是一个Redis 源码分析的专题,我计划对redis的各个部分做一个详细的讲解。