1. 命令请求的执行过程
1.1 发送命令请求
1.2 读取命令请求
客户端状态的输入缓冲区---》argv和argc---》调用命令执行器
1.3 命令执行器(1):查找命令实现
1.4 命令执行器(2):执行预备操作
比较杂
1.5 命令执行器(3):调用命令的实现函数
1.6 命令执行器(4):执行后续工作
1.7 将命令回复发送给客户端
1.8 客户端接受并打印命令回复
2.serverCron函数
服务器中serverCron函数默认每隔100毫秒执行一次
2.1 更新服务器时间缓存
系统当前时间
服务器状态中的unixtime属性和mstime属性被用作当前时间的缓存
对于高精度时间的功能来说,服务器还是会在此执行系统调用
2.2 更新LRU时钟
2.3 更新服务器每秒执行命令次数
2.4 更新服务器内存峰值记录
2.5 处理SIGTERM信号
2.6 管理客户端资源
调用clientsCron函数。
2.7 管理数据库资源
调用databasesCron函数
2.8 执行被延迟的BGREWRITEAOF
2.9 检查持久化操作的运行状态
2.10 将AOF缓冲区中的内容写入AOF文件
2.11 关闭异步客户端
2.12 增加cronloops计数器的值
3.初始化服务器
3.1 初始化服务器状态结构
redis.c/initServerConfig函数完成。