多进程架构
Redis 线程架构
单进程架构
我们在使用

Reactor 架构
- 文件事件
(file event) :Redis 客户端通过socket 与Redis 服务器连接,而文件事件就是服务器对套接字操作的抽象。例如,客户端发了一个GET 命令请求,对于Redis 服务器来说就是一个文件事件。 - 时间事件
(time event) :服务器定时或周期性执行的事件。例如,定期执行RDB 持久化。
在这个模型中,
int main(int argc, char **argv) {
...
initServer();
...
aeMain();
...
aeDeleteEventLoop(server.el);
return 0;
}
在 initServer()
中,建立各个事件处理器;在 aeMain()
中,执行事件处理循环;在 aeDeleteEventLoop(server.el)
中关闭停止事件处理循环;最后退出。