基于Socket的游戏服务器的设计与实现
致谢 | 第5-6页 |
摘要 | 第6-7页 |
ABSTRACT | 第7-8页 |
1 绪论 | 第12-16页 |
1.1 项目背景 | 第12-13页 |
1.2 项目意义 | 第13页 |
1.3 项目研究内容 | 第13-14页 |
1.4 国外开源的网络库介绍 | 第14页 |
1.5 论文结构组织 | 第14-16页 |
2 游戏服务器关键技术分析 | 第16-26页 |
2.1 libevent框架分析 | 第16-21页 |
2.1.1 libevent简介 | 第16页 |
2.1.2 libevent事件机制 | 第16-20页 |
2.1.3 libevent缓存机制 | 第20-21页 |
2.1.4 libevent在项目中的应用 | 第21页 |
2.2 zeromq框架分析 | 第21-25页 |
2.2.1 zeromq简介 | 第22-23页 |
2.2.2 zeromq框架分析 | 第23-25页 |
2.2.3 zeromq在项目中的应用 | 第25页 |
2.3 数据加密技术 | 第25页 |
2.4 本章小结 | 第25-26页 |
3 游戏服务器系统的需求分析和概要设计 | 第26-33页 |
3.1 游戏服务器框架的功能需求分析 | 第26-28页 |
3.2 游戏服务器框架非功能需求分析 | 第28页 |
3.3 系统功能模块结构 | 第28-30页 |
3.4 系统逻辑分层架构 | 第30-32页 |
3.5 本章小结 | 第32-33页 |
4 游戏服务器基础层详细设计与实现 | 第33-54页 |
4.1 数据模块协议模块 | 第33-39页 |
4.1.1 数据和数据流的封装 | 第33-34页 |
4.1.2 数据模块内存分配 | 第34-35页 |
4.1.3 数据的加密压缩 | 第35-36页 |
4.1.4 协议模块分析 | 第36-37页 |
4.1.5 数据模块类图 | 第37-39页 |
4.2 线程池及线程安全模块 | 第39-42页 |
4.2.1 线程及线程池 | 第39-40页 |
4.2.2 线程同步 | 第40-41页 |
4.2.3 线程模块类图 | 第41-42页 |
4.3 网络IO模块 | 第42-45页 |
4.3.1 套接字地址封装 | 第42-43页 |
4.3.2 网络IO封装 | 第43-44页 |
4.3.3 网络模块类图 | 第44-45页 |
4.4 游戏服务器对象管理模块的设计与实现 | 第45-46页 |
4.5 数据库和日志模块 | 第46-49页 |
4.5.1 数据库处理工具 | 第46-47页 |
4.5.2 服务器日志操作工具 | 第47-48页 |
4.5.3 数据库和日志模块类图 | 第48-49页 |
4.6 其它模块 | 第49-53页 |
4.6.1 ZMQ模型封装 | 第49-51页 |
4.6.2 引用计数 | 第51页 |
4.6.3 数学操作 | 第51页 |
4.6.4 计时器 | 第51-52页 |
4.6.5 文件解析 | 第52页 |
4.6.6 字符串处理 | 第52页 |
4.6.7 操作系统相关 | 第52-53页 |
4.7 本章小结 | 第53-54页 |
5 游戏服务器应用层详细设计与实现 | 第54-66页 |
5.1 游戏网关服务器 | 第54-59页 |
5.1.1 网关线程 | 第54-56页 |
5.1.2 网关服务器 | 第56-57页 |
5.1.3 网关代理 | 第57-58页 |
5.1.4 网关服务器类图和流程图 | 第58-59页 |
5.2 游戏应用服务器 | 第59-62页 |
5.2.1 应用服务器消息机制 | 第60-61页 |
5.2.2 游戏应用服务器 | 第61-62页 |
5.3 游戏服务器应用层效率测试 | 第62-65页 |
5.3.1 测试环境 | 第63页 |
5.3.2 测试方法 | 第63页 |
5.3.3 测试结果分析 | 第63-65页 |
5.4 本章小结 | 第65-66页 |
6 总结与展望 | 第66-68页 |
6.1 总结 | 第66页 |
6.2 展望 | 第66-68页 |
参考文献 | 第68-70页 |
作者简历及攻读硕士学位期间取得的研究成果 | 第70-72页 |
学位论文数据集 | 第72页 |