首页 > 文档
MC是如何使用多线程和状态机来处理请求命令的?
- 2024-05-30
- 1144 ℃
网络模型:了解了 Mc 的系统架构之后,我们接下来可以逐一深入学习 Mc 的各个模块了。首先,我们来学习 Mc 的网络模型。
主线程:Mc 基于 Libevent 实现多线程网络 IO 模型。Mc 的 IO 处理线程分主线程和工作线程,每个线程各有一个 event_base,来监听网络事件。主线程负责监听及建立连接。工作线程负责对建立的连接进行网络 IO 读取、命令解析、处理及响应。
Mc 主线程在监听端口时,当有连接到来,主线程 accept 该连接,并将连接调度给工作线程。调度处理逻辑,主线程先将 fd 封装成一个 CQ_ITEM 结构,并存入新连接队列中,然后轮询一个工作线程,并通过管道向该工作线程发送通知。工作线程监听到通知后,会从新连接队列获取一个连接,然后开始从这个连接读取网络 IO 并处理,如下图所示。主线程的这个处理逻辑主要在状态机中执行,对应的连接状态为 conn_listening。
上一篇:MC如何淘汰冷key和失效key
下一篇:MC是怎么定位key的
相关内容
2012生物专业教师招聘试题
订购管理单据 - 企业管理表格
人事动态,请假制度表 -...
2012心理学考试资料
Redi系统架构中各个处理...
奈特人体解剖彩色图谱
2021年合肥工业大学考研...
C语言进阶
-
设计足够可靠的分布式缓存体系,以满足大中型移动互联网系统的需要
2024-05-24 1286
-
教师资格结构化面试七大类型试题答题思路及试题解析
2024-08-19 1090
-
Spark大数据处理:技术、应用与性能优化
2024-05-24 1377
-
深入理解C++11 ——C++11新特性解析与应用
2024-05-24 1540
-
JavaScript核心参考手册
2024-05-24 1417
-
【新文道】大学英语四级实力抢分班
2024-08-18 1029
-
市场开发表 - 企业管理表格
2024-07-28 1050
-
Java 语言编码规范(Java Code Conventions)
2024-05-28 1029
-
一站式学习C编程
2024-05-24 1525
-
2009-2022计算机考研408历年真题及解析
2024-08-18 1275
文章评论 (0)
- 这篇文章还没有收到评论,赶紧来抢沙发吧~


下载完整资料
点击分享文章