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

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

论文摘要

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

论文目录

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

    • [1].实验室信息管理系统的架构选择[J]. 化学工程与装备 2020(01)
    • [2].工业互联网体系架构2.0[J]. 计算机集成制造系统 2019(12)
    • [3].基于隐喻架构的《中国日报》“一带一路”报道与中国话语权构建研究[J]. 西安电子科技大学学报(社会科学版) 2019(04)
    • [4].全球气候危机话语的架构理论透视——以中美领导人的气候议题演讲为例[J]. 外语教学 2020(01)
    • [5].习近平国际演讲话语的架构认知[J]. 江苏科技大学学报(社会科学版) 2019(04)
    • [6].中国政府工作报告与美国国情咨文中政治话语的架构对比研究[J]. 牡丹江大学学报 2020(02)
    • [7].美国国防太空架构未来5年发展分析及启示[J]. 网信军民融合 2020(02)
    • [8].学习架构:深度学习灵活性表达[J]. 电化教育研究 2020(02)
    • [9].关于5G无线网络架构对传输网的影响分析[J]. 信息通信 2020(01)
    • [10].我国零售企业数据架构规划现状与对策分析[J]. 产业与科技论坛 2020(01)
    • [11].5G蜂窝网络架构设计分析[J]. 中国新通信 2020(06)
    • [12].数据中心大二层扁平化网络架构研究[J]. 中国新通信 2020(06)
    • [13].5G标准之网络架构——构建万物互联的智能世界[J]. 中国信息化 2020(04)
    • [14].一种多架构应用软件开发及运行方法研究与实现[J]. 信息技术与网络安全 2020(09)
    • [15].算力网络架构与场景分析[J]. 信息通信技术 2020(04)
    • [16].下一代口岸监管作业系统架构风格探讨[J]. 中国口岸科学技术 2020(07)
    • [17].中国廉政话语的架构研究——以《习近平关于党风廉政建设和反腐败斗争论述摘编》为例[J]. 北京第二外国语学院学报 2020(03)
    • [18].浅析政务新媒体的内容架构和传播规律——以政务微信“信阳政务”为例[J]. 新闻研究导刊 2020(19)
    • [19].架构理论视阈下国家形象建构研究——以习近平APEC主旨演讲为例[J]. 长春理工大学学报(社会科学版) 2020(05)
    • [20].一种嵌入式板卡在线测试架构[J]. 电子测试 2020(19)
    • [21].关于产品研发流程及流程架构的探讨[J]. 航空动力 2020(05)
    • [22].苟晶事件相关语篇架构隐喻策略分析[J]. 牡丹江教育学院学报 2020(09)
    • [23].智慧城市信息化架构及面临的挑战[J]. 科技资讯 2018(26)
    • [24].创新组织架构对提升企业精细管理的作用[J]. 企业改革与管理 2019(04)
    • [25].基于整车架构的汽车研发技术探讨[J]. 时代汽车 2019(09)
    • [26].5G无线网络架构对传输网的影响探讨[J]. 信息与电脑(理论版) 2019(22)
    • [27].图书馆的无线网络架构分析[J]. 数字通信世界 2017(11)
    • [28].Hadoop MapReduce新旧架构的对比研究综述[J]. 计算机与数字工程 2017(01)
    • [29].云计算架构及其关键技术[J]. 电子技术与软件工程 2017(01)
    • [30].大数据及其体系架构与关键技术综述[J]. 装备学院学报 2017(01)

    标签:;  ;  ;  ;  

    实时网页游戏服务器端架构的设计与实现
    下载Doc文档

    猜你喜欢