游戏隔离&区服隔离
PGOS引入了游戏和游戏区服的概念,以便妥善管理不同的游戏、游戏区服,并为全球玩家提供服务。
1. 基本概念
在PGOS中,"Title"指游戏,每个游戏的数据都是相互隔离的,互不影响。
每个游戏都有不同的"Region"(区服),每个游戏区服的数据也是相互隔离的,但可以使用相同的格式共享。理想情况下,不同的逻辑区服将对应于在世界各地不同位置部署的不同服务器集群。
由于不同区服的服务是分开部署的,连接到不同区服的玩家无法一起同玩。
区服分为三种类型:
区服类型 | 描述 |
---|---|
Dev | 用于开发阶段,可以不受限制地更改服务设置和查看玩家数据。 |
Test | 用于游戏测试、修改服务设置和查看玩家数据的功能也不受限制。服务设置和配置可以从开发区域同步。 |
Prod | 用于线上生产环境。只有具有正确权限的维护人员才能访问玩家数据和修改服务设置。建议从开发/测试区域同步服务设置以确保安全性。 |
Each region can have three kinds of status:
区服状态 | 描述 |
---|---|
Closed | 处于关闭状态的区服,玩家将无法访问。通常在需要停服维护进行修改时使用,或在举办限时测试活动时使用。 |
Open | 处于开放状态的区服,玩家可以随时访问。 |
游戏在不同国家地区的情况,以下是游戏区服的两个使用案例。
2. 两种使用场景
2.1 分区分服部署模型
对于基于会话的游戏,最常见的情况是多分区分服署模型。服务部署在不同的地理位置,为附近的玩家提供服务。
如下配置所示,不同区服为不同地区的玩家提供服务。
游戏和区服的概念可以通过以下场景来说明:
- 一个游戏可以针对不同区服进行设置(美洲、欧洲、亚洲等)
- 确保测试环境的验证不会与正式环境发生冲突
- 通过游戏和区服 ID 来安排专用服务器集群。这样可以为不同地区的玩家分配附近的服务器,从而保证低延迟和稳定的游戏体验。
因此,在 PGOS 上保存数据是安全和高效的,同时也确保了来自不同区服的数据快速访问。
PGOS 未来将支持跨区域服务配置的复制,这简化了跨多个区域的部署过程。还将引入服务配置版本控制机制,使技术运营人员能够回滚到较早的版本。
2.2 全区全服部署模式
游戏区服的组织方式因游戏而异,某些游戏的后端服务部署可能更倾向于采用全区全服模式。PGOS也支持这种部署方式。
在下面的示例中,游戏只有一个用于开发的区服和一个服务于全球所有玩家的区服。
如果开发者采用这种模式,来自不同国家的玩家可以一起游戏。
通过分布式部署的专用服务器集群,即使只提供一个游戏区服,也能保证网络连接和游戏体验。如下图所示,专用服务器可以分布在多个地区。这使得不同地区的玩家在对战时都能连接到最近的服务器,享受低延迟的游戏体验。
如果开发人员选择全区全服部署模型,维护工作也会变得更加容易,因为只需要在一个区服进行配置。