当前位置:   article > 正文

Redis 客户端与服务器连接流程实例

Redis 客户端与服务器连接流程实例
  • Redis 客户端连接服务器完整的流程
  1. redis sever 启动时,会把 AE_READABLE 事件关联至 acceptTcpHandler 方法,向eventLoop注册。

  2. 当client连接server时,会触发redis sever的AE_READABLE事件为就绪状态。

  3. AE_READABLE事件为就绪态时,会在aeMain中对其进行处理,并执行绑定的acceptTcpHandler方法。在acceptTcpHandler方法中,会创建client实例,并将client的AE_READABLE事件和readQueryFromClient方法绑定,向eventLoop注册。

  4. client向server发送命令,触发client的AE_READABLE事件变为就绪态。

  5. 在aeMain中对AE_READABLE变为就绪状态的事件进行处理。执行绑定的readQueryFromClient方法,并执行相应的命令。在命令执行过后准备发送结果给client之前,会把client的AE_WRITEABLE事件和sendReplyToClient方法绑定, 向eventLoop注册,同时发送命令,触发AE_WRITEABLE事件。

  6. 在aeMain中对AE_WRITEABLE的事件进行处理,执行绑定的sendReplyToClient方法,把命令发送给client,同时删除向eventLoop注册的AE_WRITEABLE事件。

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/978414
推荐阅读
相关标签
  

闽ICP备14008679号