【夯实Redis】Redis线程模型
一、Redis线程模型
Redis 内部使用文件事件处理器( file event handler
),这个文件事件处理器是单线程的,所以 Redis 才叫做单线程的模型。
它采用 IO 多路复用机制同时监听多个 socket,将产生事件的 socket 压入内存队列中.
事件处理器用来处理具体的请求。
文件事件处理器的结构包含 4 个部分:
- 多个 socket
- IO 多路复用程序
- 请求队列
- 事件处理器
二、Redis为什么单线程效率也这么高
- 纯内存操作,所以天然速度要远快于磁盘IO操作
- 单线程没有并发操作,没有多线程的上下文切换问题
- 基于IO多路复用,同时监听多个Socket请求,所以效率高