01,redis线程模型
2021-05-07 16:59:01 0 举报
redis线程模型
作者其他创作
大纲/内容
4,socket放入一个队列
13,客户端获取响应数据产生事件
socket1
IO多路复用器
17,返回结果
ss
客户端2
2,产生一个AE_READABLE事件
命令回复处理器
redis进程文件事件处理器
8,读/写请求
15,将准备好的响应数据写入socket
1,建立连接
关联
10,监听事件
redis基于reactor模式开发了网络事件处理器,这个处理器叫做文件事件处理器采用IO多路复用机制同时监听多个socket
socket2
写数据,为socket关联命令请求处理器
命令请求处理器
16,比如输出结果(ok)
sercersocket
文件事件分派器
创建对应的socket
s2
3,监听到事件
读数据,为socket关联命令回复处理器
取出一个socket
14,监听事件
客户端1
返回响应
s1
18,将socket01的AE_WRITABLE事件和命令回复处理器的关联删除
AE_READABL
9,请求产生事件
11,读/写处理
发起请求
AE_WRITABLE
连接应答处理器
IO多路复用器监听AE_REABLE和AE_WRITABLE两种事件
为啥redis单线程模型也能效率这么高?1)纯内存操作2)核心是基于非阻塞的IO多路复用机制3)单线程反而避免了多线程的频繁上下文切换问题
0 条评论
下一页