建议先关注、点赞、收藏后再阅读。
在Redis服务器的初始化过程中,以下是主要的关键步骤或函数被调用的顺序:
main()
函数:Redis服务器的入口函数。initServerConfig()
函数:初始化服务器的配置。initServer()
函数:初始化服务器的数据结构。initSentinelConfig()
函数:初始化Sentinel服务器的配置(如果启用)。initNetworking()
函数:初始化网络连接相关的配置。- `initCrashReport()函数:初始化Crash Report机制。
- `initThreadedIO()函数:初始化线程化IO机制。
redisSetProcTitle()
函数:设置Redis服务器的进程名。checkTcpBacklogLimits()
函数:检查TCP backlog的限制。- `createSharedObjects()函数:创建共享对象。
adjustOpenFilesLimit()
函数:调整可打开文件描述符的限制。- `hashTest()函数:进行哈希算法的测试。
moduleInitModulesSystem()
函数:初始化Redis模块系统。slowlogInit()
函数:初始化慢查询日志。bioInit()
函数:初始化后台线程IO机制。clockSamplesInit()
函数:初始化时钟采样。- `initDb()函数:初始化数据库。
- `createMissingAsyncClient()函数:创建缺失的异步客户端。
loadDataFromDisk()
函数:从磁盘加载数据。serverCron()
函数:启动服务器的周期性任务。aeMain()
函数:进入事件循环。
以上是Redis服务器初始化过程中的主要关键步骤或函数被调用的顺序,其它辅助函数可能会在这些过程中被调用或多次调用。