摘要 | 第5-7页 |
ABSTRACT | 第7-8页 |
1 绪论 | 第11-15页 |
1.1 研究目的、背景与意义 | 第11-13页 |
1.1.1 研究背景 | 第11-12页 |
1.1.2 研究目的与意义 | 第12-13页 |
1.2 国内外研究现状 | 第13-15页 |
2 分布式系统概要 | 第15-23页 |
2.1 分布式系统的定义及特点 | 第15-16页 |
2.2 分布式系统的目标 | 第16-17页 |
2.3 分布式系统的类型 | 第17-18页 |
2.4 分布式系统的关键技术 | 第18-20页 |
2.4.1 分布式文件系统 | 第18页 |
2.4.2 分布式计算 | 第18-20页 |
2.4.3 分布式数据库 | 第20页 |
2.5 分布式系统的性能与可用性 | 第20-22页 |
2.5.1 复制 | 第20-21页 |
2.5.2 一致性问题 | 第21-22页 |
2.6 分布式系统的历史与现状 | 第22-23页 |
3 MMORPG服务器架构 | 第23-38页 |
3.1 MMO服务器架构 | 第24-25页 |
3.2 提高MMORPG服务器可用伸缩性的其他方法 | 第25-26页 |
3.2.1 用户侧线路的带宽瓶颈 | 第25页 |
3.2.2 游戏服务器逻辑处理的性能瓶颈 | 第25页 |
3.2.3 游戏数据库的瓶颈 | 第25-26页 |
3.3 MMORPG的通信架构 | 第26-29页 |
3.3.1 进程通信方式 | 第26-27页 |
3.3.2 事件驱动模式 | 第27-28页 |
3.3.3 C10K问题 | 第28-29页 |
3.4 伸缩性服务器架构的一致性问题 | 第29-34页 |
3.4.1 ZooKeeper的特点 | 第29页 |
3.4.2 ZooKeeper的设计目标 | 第29-32页 |
3.4.3 ZooKeeper技术核心 | 第32-34页 |
3.5 Redis介绍 | 第34-38页 |
4 MMORPG服务器设计 | 第38-58页 |
4.1 通信组件 | 第38-48页 |
4.1.1 应用层的缓冲区 | 第38-41页 |
4.1.2 IO模型与线程模型 | 第41-43页 |
4.1.3 关键类的实现 | 第43-46页 |
4.1.4 通信服务 | 第46-48页 |
4.2 数据服务组件 | 第48-50页 |
4.3 任务调度器与任务组件 | 第50-52页 |
4.4 利用zookeeper解决分布式协同服务 | 第52-58页 |
4.4.1 统一配置管理 | 第52-53页 |
4.4.2 分布式协调/通知 | 第53-54页 |
4.4.3 负载均衡 | 第54-55页 |
4.4.4 命名服务 | 第55-56页 |
4.4.5 分布式锁 | 第56-58页 |
5 系统测试 | 第58-63页 |
5.1 测试环境部署 | 第58-60页 |
5.1.1 测试架构 | 第58-59页 |
5.1.2 测试环境说明 | 第59-60页 |
5.2 ZooKeeper的测试 | 第60-61页 |
5.3 模拟测试场景 | 第61-63页 |
6 总结与展望 | 第63-65页 |
6.1 总结 | 第63页 |
6.2 改进与展望 | 第63-65页 |
参考文献 | 第65-69页 |
致谢 | 第69-70页 |
在学期间的研究成果及发表的学术论文 | 第70页 |