redis源码阅读

服务器启动过程

1、初始化服务器状态结构
在启动服务器时,设置服务器运行ID、默认运行频率、默认配置文件路径、默认端口号等属性。
initServerConfig();
2、载入配置选项
在启动服务器时,用户可以通过命令行给定配置参数或指定配置文件来修改服务器的默认配置。
loadServerConfig(configfile,options);

3、初始化服务器数据结构
在启动服务器时,载入配置选项后,服务器将调用initServer,为server.clients链表,server.db数组,server.showlog属性等分配内存,并初始化。
initServer();

打印redis的图标,以及redis的版本号信息等。
redisAsciiArt();
4、还原数据库状态
在完成对服务器状态server变量的初始化之后,服务器通过载入rdb或者aof 进行数据库数据区还原。
27554:M 30 Dec 15:13:43.020 * DB loaded from disk: 0.001 seconds

5、执行事件循环
27554:M 30 Dec 15:13:43.020 * The server is now ready to accept connections on port 6379
27554:M 30 Dec 15:13:43.020 - DB 1: 1 keys (0 volatile) in 4 slots HT.
27554:M 30 Dec 15:13:43.020 - 0 clients connected (0 slaves), 832192 bytes in use  

客户端启动过程
as

dsd