Advertisement

Redis源码分析二十期:AE事件驱动机制

阅读量:

"事件驱动"这一术语在当前技术领域中被提及的频率越来越高,给人一种颇为前沿和专业的感觉。近日,笔者对Redis内部所采用的驱动模型进行了深入探究,收获非常可观。整个模型由一个核心文件ae.c以及四个与事件类型相关的文件构成,通过这些内容可以全面理解Redis是如何处理各类事件的。在具体的事件处理过程中,Redis采用了epoll、select、kqueue以及evport这几种机制,其中evport可能对部分读者来说较为陌生。前三种机制在常见的libevent网络库中均有涉及,而作者在设计该事件驱动模型时也明确指出,这种实现方式主要是为了简化代码复用而设计出的一个小型处理框架。

复制代码
 /* A simple event-driven programming library. Originally I wrote this code

    
  * for the Jim's event-loop (Jim is a Tcl interpreter) but later translated
    
  * it in form of a library for easy reuse.
    
  * * ae是作者写的一个简单的事件驱动库,后面进行了转化,变得更为简单的复用
    
    
    
    

因此整体而言并不复杂。在全面掌握事件驱动模型

全部评论 (0)

还没有任何评论哟~