摘要 | 第5-6页 |
ABSTRACT | 第6-7页 |
第一章 绪论 | 第12-16页 |
1.1 选题背景和意义 | 第12页 |
1.2 国内外研究现状 | 第12-14页 |
1.3 课题研究内容 | 第14页 |
1.4 论文组织结构 | 第14-15页 |
1.5 本章小结 | 第15-16页 |
第二章 理论基础及相关技术 | 第16-35页 |
2.1 COM组件 | 第16-18页 |
2.2 Boost Asio | 第18-20页 |
2.3 RPC | 第20-21页 |
2.4 ProtoBuf | 第21页 |
2.5 分布式一致性算法 | 第21-27页 |
2.5.1 Paxos | 第22-24页 |
2.5.1.1 角色 | 第22-23页 |
2.5.1.2 流程 | 第23-24页 |
2.5.2 Raft | 第24-27页 |
2.5.2.1 角色 | 第24-25页 |
2.5.2.2 子问题 | 第25页 |
2.5.2.3 流程 | 第25-26页 |
2.5.2.4 Leader Election | 第26页 |
2.5.2.5 Log Replication | 第26-27页 |
2.5.2.6 安全性 | 第27页 |
2.6 典型的分布式同步系统 | 第27-29页 |
2.6.1 Chubby | 第27-29页 |
2.6.2 Zookeeper | 第29页 |
2.7 OCF即相关子系统介绍 | 第29-33页 |
2.7.1 OCF库设计原理 | 第30-31页 |
2.7.2 基础网络通信引擎IoEngine | 第31-32页 |
2.7.3 消息通信组件Channel | 第32-33页 |
2.8 本章小结 | 第33-35页 |
第三章 stage系统需求分析 | 第35-39页 |
3.1 stage系统设计目标 | 第35-36页 |
3.1.1 功能需求 | 第35-36页 |
3.1.2 非功能需求 | 第36页 |
3.2 stage系统用例图 | 第36-38页 |
3.3 本章小结 | 第38-39页 |
第四章 stage系统总体设计 | 第39-53页 |
4.1 总体设计思路 | 第39-40页 |
4.2 总体系统框架 | 第40-41页 |
4.3 模块设计 | 第41-52页 |
4.3.1 stage网络服务模块设计 | 第41页 |
4.3.2 Raft算法模块设计 | 第41页 |
4.3.3 Mutex管理模块设计 | 第41-47页 |
4.3.3.1 mutexInit流程设计 | 第42-43页 |
4.3.3.2 mutexDestroy流程设计 | 第43页 |
4.3.3.3 mutexLock流程设计 | 第43-44页 |
4.3.3.4 mutexTryLock流程设计 | 第44-45页 |
4.3.3.5 mutexUnlock流程设计 | 第45-47页 |
4.3.4 Cond管理模块设计 | 第47-51页 |
4.3.4.1 condInit流程设计 | 第47-48页 |
4.3.4.2 condDestroy流程设计 | 第48页 |
4.3.4.3 condWait流程设计 | 第48-49页 |
4.3.4.4 condSignal流程设计 | 第49-50页 |
4.3.4.5 condBroadcast流程设计 | 第50-51页 |
4.3.5 客户端模块设计 | 第51-52页 |
4.4 本章小结 | 第52-53页 |
第五章 stage系统详细设计与实现 | 第53-74页 |
5.1 编程环境 | 第53页 |
5.2 stage总体模块设计 | 第53-55页 |
5.3 底层基础模块介绍 | 第55-57页 |
5.3.1 基础网络通信引擎IoEngine | 第55-56页 |
5.3.2 消息通信组件Channel | 第56-57页 |
5.4 stage网络服务模块详细设计与实现 | 第57-65页 |
5.4.1 stage网络协议 | 第58-61页 |
5.4.1.1 ServerMessage介绍 | 第58-59页 |
5.4.1.2 ClientMessgae介绍 | 第59-61页 |
5.4.2 stage网络服务模块 | 第61-65页 |
5.4.2.1 StagePerformer介绍 | 第62-64页 |
5.4.2.2 PBHelper介绍 | 第64页 |
5.4.2.3 其它 | 第64-65页 |
5.5 Raft算法模块详细设计与实现 | 第65-66页 |
5.6 Mutex管理模块详细设计与实现 | 第66-67页 |
5.7 Cond管理模块详细设计与实现 | 第67-68页 |
5.8 客户端模块的详细设计与实现 | 第68-70页 |
5.9 重要执行流程 | 第70-73页 |
5.9.1 stage系统启动流程 | 第70-71页 |
5.9.2 stage系统内部选举流程 | 第71-72页 |
5.9.3 客户端请求操作流程 | 第72-73页 |
5.10 本章小结 | 第73-74页 |
第六章 系统测试 | 第74-88页 |
6.1 测试环境 | 第74页 |
6.2 功能测试 | 第74-83页 |
6.2.1 Mutex操作相关测试 | 第75-78页 |
6.2.1.1 mutexInit测试 | 第75页 |
6.2.1.2 mutexDestroy测试 | 第75-76页 |
6.2.1.3 mutexLock测试 | 第76页 |
6.2.1.4 mutexTryLock测试 | 第76-77页 |
6.2.1.5 mutexUnlock测试 | 第77-78页 |
6.2.1.6 mutex综合测试 | 第78页 |
6.2.2 Cond操作相关测试 | 第78-81页 |
6.2.2.1 cond Init测试 | 第78-79页 |
6.2.2.2 condDestroy测试 | 第79页 |
6.2.2.3 condWait测试 | 第79-80页 |
6.2.2.4 condSignal测试 | 第80页 |
6.2.2.5 condBroadcast测试 | 第80-81页 |
6.2.2.6 cond综合测试 | 第81页 |
6.2.3 其它 | 第81-83页 |
6.3 性能测试 | 第83-87页 |
6.3.1 网络传输效率测试 | 第83-85页 |
6.3.1.1 测试方法 | 第83页 |
6.3.1.2 测试结果对比与分析 | 第83-85页 |
6.3.2 吞吐量测试 | 第85-87页 |
6.3.2.1 测试方法 | 第85-86页 |
6.3.2.2 测试结果与对比分析 | 第86-87页 |
6.4 本章小结 | 第87-88页 |
第七章 结论和展望 | 第88-90页 |
致谢 | 第90-91页 |
参考文献 | 第91-94页 |
攻硕期间取得的研究成果 | 第94-95页 |