游戏服务器架构PPT课件

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 服务器组间的时间校对 • 心跳控制
13
数据服务
• 唯一的数据储存点
– 使用本地文件系统 – 使用简单文本结构 – 使用简单的交互协议
• 物品发放服务
Hale Waihona Puke Baidu– 虚拟物品的控制
• 数据监控和备份
14
系统登陆与灾难处理
• 门卫
– 用户登陆排队 – 登出登记
• 黑洞
– 从灾难中恢复 – 保持跟玩家的有限交互
– 全局数据库仅保存用户身份信息 – 不保持常连接
• 玩家可以在整个大世界中发生联系
– 物理上玩家分属不同服务器组管理 – 用户数据库各自独立,无须实时交互 – 虚拟世界中的距离即物理世界上的距离
7
登陆过程
8
服务器组间的消息传递
9
服务器组间消息传递
• 避免交互性协议
– 游戏设计上考虑远程通讯的时间差 – 允许数据复制,并考虑多个副本相遇时的处理
大世界网络游戏服务器的构架
Deep cold 游戏引擎
1
2
引擎三大部分
• 基于 freebsd 的服务器 • 跨平台的客户端
– 二进制跨平台 – 支持 Win32 MacOs Linux Freebsd – 3d 部分基于 openGL – C 语言编写底层、逻辑部分动态脚本语言
• 开发用相关工具
• 每组服务器有唯一的数据输入输出点
– 海关服务
• 玩家的交互受游戏设计的限制
– 限制是为了更丰富的可能性 – 虚拟世界的战争、贸易以及资源分配
10
服 务 器 组 的 内 部 结 构
11
外部连接处理
• 多个外部接入点
– 国情问题:电信网通问题 – 特别通道:用于管理人员进入
• 组播
– 分组管理的问题
演讲人:XXXXXX 时 间:XX年XX月XX日
17
• 心跳控制
– 流水线作业 – 时间控制 – 录象回放调试(监督数据合法性)
• 聊天信息分离
– 利用广播服务器减低负载 – 广义聊天信息
12
时间校对
• 校对玩家机器和服务器组的时间
– 防止时间作弊 – 估算消息发生时刻,更流畅的完成交互动作
• 精确保证时间的一致性
– NTP 协议的问题 – Client 的不合作(区分恶意和无意)
15
结束语
当你尽了自己的最大努力时,失败也是伟大的, 所以不要放弃,坚持就是正确的。
When You Do Your Best, Failure Is Great, So Don'T Give Up, Stick To The End
16
感谢聆听
不足之处请大家批评指导
Please Criticize And Guide The Shortcomings
– 跨平台命令行工具 – Windows 下的视觉编辑工具
3
服务器的设计
• 底层全部由 C 语言编写 • 逻辑层语言无关
– 类 COM 的模块化设计 – 多语言混合编程
• 多进程单线程结构 • 服务器组内各进程功能有明显的层次划分 • 数据和逻辑分离
4
具体设计
5
6
服务器群
• 单一登陆点做进入系统的认证
相关文档
最新文档