redis事件

redis服务器是一个事件驱动程序,服务器需要处理文件事件和时间事件。

redis基于reacror模式开发了自己的网络事件处理器:文件事件处理器,使用I/O多路复用程序来同时监听多个套接字,并根据套接字目前执行的任务来为套接字关联不同的事件处理器。

每当一个套接字准备好执行连接应答,写入,读取,关闭等操作时,就会产生一个文件事件。

尽管多个文件事件可能会并发地出现,但I/O多路复用程序总是会将所有产生事件的套接字都放到一个队列里面,然后通过这个队列,以有序,同步每次一个套接字的方式向文件事件分派器传送套接字。当上一个套接字产生的事件被处理完毕之后(该套接字为事件所关联的事件处理器执行完毕),I/O多路复用程序才会继续向文件事件分派器传送下一个套接字。

相关推荐