1. 程式人生 > >redis源碼閱讀

redis源碼閱讀

iar cep 數據區 ati rom 端口 option 分配內存 事件循環

服務器啟動過程

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
 

redis源碼閱讀