随笔分类 -  源码解析

摘要:多线程模式中,在main函数中会执行InitServerLast void InitServerLast() { bioInit(); // 关键一步, 这里启动了多条线程,用于执行命令,redis起名为IO 线程 initThreadedIO(); set_jemalloc_bg_thread(s 阅读全文
posted @ 2023-10-02 17:56 明月照江江 阅读(143) 评论(0) 推荐(0) 编辑
摘要:有了下文的梳理后 redis 启动流程 再来解析redis 在单线程模式下解析并处理客户端发来的命令 1. 当 client fd 可读时,会回调readQueryFromClient函数 void readQueryFromClient(connection *conn) { client *c 阅读全文
posted @ 2023-10-02 15:30 明月照江江 阅读(101) 评论(0) 推荐(0) 编辑
摘要:1. redis 由 server.c 的main函数启动 int main(int argc, char **argv) { ... // 上面的部分为读取配置和启动命令参数解析,看到这一行下面为启动流程 serverLog(LL_WARNING, "oO0OoO0OoO0Oo Redis is 阅读全文
posted @ 2023-10-02 13:07 明月照江江 阅读(105) 评论(0) 推荐(0) 编辑
摘要:1. 可以从单元测试开始入手 查看类JedisSentinelPool private static final String MASTER_NAME = "mymaster"; protected static final HostAndPort sentinel1 = HostAndPorts. 阅读全文
posted @ 2023-10-02 10:21 明月照江江 阅读(483) 评论(0) 推荐(0) 编辑