确定一台机器部署服务进程数量
mc的自由度非常大,每种网络游戏的实现千差万别。不同的网络游戏使用不同的mod,不同mod的性能消耗也不一样的。有的网络游戏玩法复杂,一台物理机可能部署20个game;有的网络游戏玩法简单,一台物理机可能部署30个game。
我们建议网络游戏服主积极联系我们,我们会指导服主按照最佳方式部署。
评估lobby/game的最大在线人数
- 服务器承载能力与在线玩家数平方成反比。在线玩家越多,服务器消耗cpu越多。
- 地图大小主要影响服务器占用内存,对服务器承载能力影响较弱。目前单服进程最大内存是固定8G。
- 服务器不会一次加载所有地图,它会按需加载区块,会将没使用到的区块存储到磁盘。
- 服务器性能消耗由mod和引擎组成,mod性能消耗也是不能忽略的。服主优化mod就能提升网络游戏性能,服主应尽力优化mod。
- 最大在线人数评估方法:网络服正式上线前建议先进行限量删档测试,在删档测试期间观察服务器性能,得到lobby/game最大在线人数。具体过程:初期将lobby最大在线人数设置50~100,game最大在线人数设置10~30, 接着观察服务器性能,然后不断滚动更新调整最大在线。
第五人格的性能数据
部署方式
第五人格使用的是低频主机,40核,128G内存,主频2.3GHZ,一共使用18台低频物理机。具体部署方式如下:
- 1个master、2个service、10个game部署在一台物理机。
- 10个proxy部署在一台物理机。
- 20个lobby部署在一台物理机。
- 300个game部署到20台物理机,每个物理机部署15个game。
- 每个服务器进程的内存限制为最大8G。
承载人数
服务器可以承载这么多人,要求满足以下条件:
- 服务器进程的主线程cpu大部分时间不超过80%。
- 进程占用内存不允许超过8G。
- 客户端不存在明显卡顿或延迟。
下面介绍第五人格各个服的承载能力:
- 一个proxy可以承载600人,10个proxy可以承载6000人。
- 一个lobby可以承载200人,20个lobby可以承载4000人。
- 一个game可以承载15人,310个game可以承载4650人。第五人格一个game承载人数较低,主要是玩法限制导致,游戏一个game只能开3局,一局只有5人。
结论:第五人格使用18台物理机条件下部署,proxy可以承载6000人,lobby+game可以承载8650人,取两者最小值,第五人格可以承载6000人。