传奇广告查询第一站 同步54.com

游戏思考10:游戏服务器的进程和线程简单谈谈(未完待续6/30)
原创 于2026-01-05 18:07:00发布
19 阅读
0
0

一、总的看法

之前游戏开多线程是因为机器原因,榨干CPU的全部性能,现在机器性能好了,所以基本都是多进程

二、各种搭配

1)多进程单线程(每个单进程一个单线程)

  • 优点
    ①故障隔离,一个逻辑服务器宕机不会影响全服玩家;
    ②扩展性强,多个分布式部署,可以达到几万人同时在线

  • 缺点
    ①为了充分利用多核,会一台物理机会部署多个逻辑服务器,但是由于这个服务器是开了共享内存的进程,会有很多内存冗余占用;
    ②由于有多个逻辑服务器,得有个中控服务器异步的同步各个逻辑服务器的数据,数据同步和异步调用让写逻辑非常难受

  • 代表作
    天涯明月刀、轩辕传奇、御龙在天
    在这里插入图片描述

  • 理由
    1)首先,不拆进程不利于协同开发,因为系统耦合度太高。现在一款游戏大作,开发团队动辄几十人,多则上百人,其中负责后台开发的团队也有大几十人,这么一个系统,大家都在同一个进程里面写,责任不明晰,出了问题很难判断问题在哪。
    2)其次,后台很多系统、子系统之间性能有差异。比如登录模块在10万PCU下所需的进程数、机器数,可能跟负责对局的模块不一样,聊天模块、活动子系统之间也存在性能差异。如果不拆分进程,就不能做到按需部署只能很暴力地把进程按某种倍数扩容,这必然会浪费机器资源,甚至有可能增加机器、部署更多进程,都解决不了性能瓶颈。
    3)现在很多游戏都会寻求出海,出海必然会存在地域差异,如果想要提供好的游戏体验,就必须考虑就近部署的问题,如果进程不拆开的话,就近部署其实比较难做。
    4)在容灾上会受到一定限制。因为我们没有把关键子系统拆分出来,而人力成本

管理员
0
0
0
分享
上一篇: C++怎么读取XML文件?
下一篇: 架设传奇时打开DBC数据库出错或读取DBC失败解决方法
评论
历史记录
回顶部
浏览时间 游戏名称 游戏IP 开区网址
注册GM1论坛账号
  • 上传头像
注册

已有账号,

微信扫码登录
重置密码
重置密码

注册

绑定关联手机号
关联手机号