论文目录 | |
摘要 | 第1-6页 |
ABSTRACT | 第6-10页 |
第一章 绪论 | 第10-17页 |
1.1 引言 | 第10-11页 |
1.2 研究现状 | 第11-14页 |
1.3 论文的研究内容与意义 | 第14-15页 |
1.4 论文组织结构 | 第15-16页 |
1.5 本章小结 | 第16-17页 |
第二章 P2P分布式存储系统相关技术介绍 | 第17-25页 |
2.1 Reactor事件驱动模型 | 第17页 |
2.2 Gossip协议 | 第17-21页 |
2.3 Phi Accural Failure Detector故障检测算法 | 第21-22页 |
2.4 一致性Hash算法 | 第22-24页 |
2.5 本章小结 | 第24-25页 |
第三章 面向高并发小包数据分布式存储系统的总体结构设计 | 第25-32页 |
3.1 系统结构设计 | 第25-27页 |
3.2 服务器软件模块层次图 | 第27-29页 |
3.3 系统数主要据流的处理过程设计 | 第29-31页 |
3.3.1 客户端读写数据流程 | 第29-30页 |
3.3.2 服务器端消息的收集和分发 | 第30-31页 |
3.4 本章小结 | 第31-32页 |
第四章 面向高并发小包数据分布式存储系统的具体实现 | 第32-67页 |
4.1 Messaging Service统一消息处理模块 | 第32-38页 |
4.1.1 Messaging Service模块总体结构 | 第32-33页 |
4.1.2 Messaging Service模块关键类图 | 第33-35页 |
4.1.3 模块主线程和LibEventBase子线程的通信设计 | 第35-36页 |
4.1.4 TCP缓冲区的作用和设计 | 第36-38页 |
4.2 Gossip节点同步模块实现 | 第38-43页 |
4.2.1 节点属性版本号管理的设计 | 第38-40页 |
4.2.2 Gossip协议报文实现 | 第40-42页 |
4.2.3 Gossip协议交互时序图及其具体实现 | 第42-43页 |
4.3 多线程库的封装 | 第43-47页 |
4.3.1 线程体的数据结构设计 | 第43-45页 |
4.3.2 创建线程时的执行流程 | 第45-46页 |
4.3.3 子线程启动流程 | 第46-47页 |
4.4 集群节点的相互感知 | 第47-51页 |
4.4.1 心跳管理 | 第47-48页 |
4.4.2 故障节点的检测 | 第48-51页 |
4.5 客户端及一致性Hash模块的设计 | 第51-54页 |
4.5.1 客户端模块 | 第51-53页 |
4.5.2 一致性Hash模块设计 | 第53-54页 |
4.6 数据副本模块 | 第54-62页 |
4.6.1 数据副本策略 | 第54-55页 |
4.6.2 数据副本模块实现 | 第55-57页 |
4.6.3 异步计数服务的设计 | 第57-62页 |
4.6.3.1 数据结构 | 第57-58页 |
4.6.3.2 异步计数服务使用方式 | 第58-59页 |
4.6.3.3 时间轮定时器 | 第59-62页 |
4.7 数据IO管理器模块 | 第62-66页 |
4.7.1 模块整体结构 | 第62-63页 |
4.7.2 读数据流程 | 第63-64页 |
4.7.3 数据IO管理器模块实现 | 第64-66页 |
4.8 本章小结 | 第66-67页 |
第五章 系统测试和分析 | 第67-78页 |
5.1 实验环境 | 第67页 |
5.2 网络模块性能测试 | 第67-70页 |
5.2.1 压力测试 | 第67-69页 |
5.2.2 模拟仿真 | 第69-70页 |
5.3 Gossip协议模块测试 | 第70-73页 |
5.4 一致性Hash及数据副本测试 | 第73-75页 |
5.5 故障检测模块测试 | 第75-76页 |
5.6 数据IO管理模块测试 | 第76-77页 |
5.7 本章小结 | 第77-78页 |
第六章 总结与展望 | 第78-81页 |
6.1 总结 | 第78-79页 |
6.2 下一步工作 | 第79-81页 |
致谢 | 第81-82页 |
参考文献 | 第82-85页 |