学位论文 > 优秀研究生学位论文题录展示

实时网页游戏服务器端架构的设计与实现

作 者: 赖勇浩
导 师: 陈琼;邢豫
学 校: 华南理工大学
专 业: 计算机系统结构
关键词: SOA 网页游戏 实时 服务器 协程 RPC
分类号: TP311.52
类 型: 硕士论文
年 份: 2011年
下 载: 150次
引 用: 1次
阅 读: 论文下载
 

内容摘要


本文以《天下盛境》这一商业项目的服务器端架构设计与实现为蓝本,讲述以面向服务架构(SOA)为指导思想,对《天下盛境》的服务器端架构进行设计和实现的过程,探讨此类游戏的实用技术。面对实时性带来的技术挑战,和网页游戏的技术约束,我们研究了底层的I/O模型、CPU复用、进程间通信、远程过程调用(RPC),运维和测试支撑系统。本项目独创性地将常用于Web项目的SOA思想应用到游戏的服务器端架构的设计中;使用Python编程语言实现了消息总线,屏蔽了服务的地址和协议,将服务器进程之间的耦合巧妙地分离;通过消息总线,游戏的数据库、聊天、外挂检测、登陆、区域、频道、副本和竞技场等子系统相互协作,共同完成业务需求;使用基于协程的高性能I/O模型,在高效的网络收发库gevent之上建立了基于Google Protobuf的RPC协议;使用基于序号的通信实现了防重放、防篡改机制,达到较好的安全通信效果。通过对一些指标评测,如对RPC调用性能、平均单台物理服务器承载人数等进行评测,结果表明这些指标都达到商用水平。本项目的工作,对于进一步发扬SOA思想,把更多的服务分拆、独立出来,为公司(甚至整个行业)的其它项目所用具有重要意义。

全文目录


摘要  5-6
Abstract  6-9
第一 章 绪论  9-15
  1.1 研究背景  9-10
  1.2 国内外研究现状  10-12
  1.3 本课题的研究内容  12-13
  1.4 本课题的研究意义  13-14
  1.5 本文的组织结构  14-15
第二章 《天下盛境》项目及技术选型  15-31
  2.1 游戏的市场定位和玩法  15-16
  2.2 游戏的技术约束和挑战  16-17
    2.2.1 技术约束  16-17
    2.2.2 实时性带来的技术挑战  17
  2.3 服务器端编程语言  17-25
    2.3.1 Python  18-20
    2.3.2 Cython  20-25
      2.3.2.1 直接使用 C 语言编写 Python 扩展模块  20-22
      2.3.2.2 使用 Cython 编写 Python 扩展模块  22-25
  2.4 基于协程的高性能 I/O  25-31
    2.4.1 gevent 介绍  28-31
第三章 服务器端架构设计  31-38
  3.1 SOA(面向服务的架构)概述  31-32
  3.2 基于 SOA 的架构设计  32-34
  3.3 数据库设计与备份  34-38
    3.3.1 设计  34-36
    3.3.2 备份  36-38
第四章 通信协议实现  38-46
  4.1 TCP/UDP介绍、选择  38-39
  4.2 Google Protobuf 介绍  39-40
  4.3 abu.RPC 介绍  40-42
  4.4 通信安全  42-46
    4.4.1 握手协议  43-44
    4.4.2 基于序号的通信  44-46
第五章 子系统的实现  46-54
  5.1 配置服务器  46
  5.2 聊天服务器  46-47
  5.3 外挂检测服务器  47
  5.4 登陆服务器  47-48
  5.5 频道(主城)服务器、副本服务器和竞技场服务器  48-49
  5.6 运维支撑系统  49-54
    5.6.1 基于角色的权限控制  49-51
    5.6.2 游戏仲裁  51-52
    5.6.3 数据与图表  52-53
    5.6.4 操作日志  53-54
第六章 测试与验收  54-60
  6.1 获取性能测试数据的方法  54-56
  6.2 性能测试的4 个方案  56-57
  6.3 性能测试数据比较  57-60
    6.3.1 主城同步测试性能(方案1 )  57-58
    6.3.2 主城同步测试性能(方案2 )  58
    6.3.3 副本测试性能(方案3 )  58-59
    6.3.4 竞技场测试性能(方案4 )  59-60
第七章 结论与展望  60-62
  7.1 项目实践效果  60
  7.2 结论  60-61
  7.3 后续的工作  61-62
参考文献  62-64
攻读博士/硕士学位期间取得的研究成果  64-65
致谢  65

相似论文

  1. 基于陀螺和星敏感器的卫星姿态确定研究,V448.2
  2. 基于FPGA的数字图像处理基本算法研究与实现,TP391.41
  3. 基于用户兴趣特征的图像检索研究与实现,TP391.41
  4. 图像实时采集、存储与处理方法研究,TP391.41
  5. 四旋翼垂直起降机控制问题的研究,TP273
  6. 一种自适应选择处理节点的时空查询算法,TN929.5
  7. 基于面向服务架构的公众信息系统在新农村信息化建设中的应用研究,TP393.09
  8. 实时操作系统硬件加速器SoC系统的深亚微米ASIC实现,TN47
  9. 基于B/S架构的考试系统设计与实现,TP311.52
  10. 基于SOA的MES系统的设计与实现,TP311.52
  11. 应用层协议识别和还原方法的研究与实现,TP393.08
  12. SOA在电子政务中的应用,TP393.09
  13. 面向服务的数据集成模型的研究与实现,TP311.52
  14. 基于SOA与工作流的OA系统的研究与实现,TP311.52
  15. 基于SOA构架的社区医疗管理系统研究与实现,TP311.52
  16. 基于多协议的多媒体服务器应用开发研究,TP368.5
  17. TQC-DS系统中实时数据集成技术的研究与应用,TP311.52
  18. 电力系统多元化信息分发处理系统设计,TP311.52
  19. 外贸企业咨询服务热线系统,TP311.52
  20. 地铁乘客信息显示系统中的无线通信传输稳定性研究,TN873
  21. 带服务器的平行机排序问题的两个近似算法,O223

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机软件 > 程序设计、软件工程 > 软件工程 > 软件开发
© 2012 www.xueweilunwen.com