MMORPG类网络游戏的典型架构
fmms
13年前
MMORPG的特点是角色之间一般可见;有不同类型的地图,包括开放地图(城市、村庄等)和封闭地图(副本、大型战场和小型PK房间等);有各种RPG组织元素(如公会、家族等)。架构设计逻辑服务器部分的出发点是根据上面的特点设计的。一般可以用下面的架构:
MMORPG的后台其实就这么简单,架构不复杂。对后台架构经验较少的兄弟,别太纠结,就用这个简单的架构一般就可以满足商业运营要求了。
gated
前端接入服务器,主要功能是连接接入,消息收发和发送,也可以包括加解密和解压缩功能。
ctrld
一个指挥控制的服务器,控制整个服务器组角色的状态,登录初始化也在这里处理。client进入游戏前的角色列表一般也从这个服务器获取。
zoned
这个就是逻辑服务器,对应管理上面的开放地图和封闭地图,游戏逻辑都放在这里实现。一个zoned可以根据策划设计管理一个或多个开放地图和封闭地图。
cached
一般有淘汰策略的数据缓存,64位大内存机器的话,一般一台也够了。cached和后面的db根据业务特点和数据流量灵活配置。
globald&antibotd
globald管理公会、家族等。antibotd延迟的作弊检查。gated和zoned会把数据转发给globald&antibotd。
另外,client从zoned1切到zoned2要注意数据的正确性。