为什么现在的大部分互联网产品都能不停机维护,游戏每周维护都是停机 4 小时以上?

2024-08-20 20:02:21 +08:00
 drymonfidelia
8273 次点击
所在节点    程序员
63 条回复
geekvcn
2024-08-21 07:08:13 +08:00
热更新现在基本规模大点的网游都支持,停机维护主要是大版本更新需要客户端和服务端都更新,大版本更新一般没法热更新,不是技术上做不到,而是不能保证不产生奇奇怪怪问题。

至于周四停机维护还有一点就是游戏服务端很多都是 C++写的,有些程序员水平一般,可能内存回收做的不到位,开久了内存泄漏就多了,周四重启能保证周五周末高峰期服务器上的服务端处于最佳状态。

游戏和 Web 这些服务不一样,吃计算性能,对带宽质量和实时性要求也高,web 服务一个几千 ms 的突发性能下降基本没问题,还能多机负载均衡因为用户与用户之间基本没啥实时交互。游戏除了玩家换服务器,或者切换位面/分线,核心负载没有办法均衡负载到多个服务器,最多把聊天之类的功能独立出来
qinmenghuo
2024-08-21 08:31:47 +08:00
真的有每周停机维护四小时以上的游戏吗?怎么这么多人对一个几乎不存在的东西讨论的兴致勃勃的?
wyxls
2024-08-21 08:47:19 +08:00
@qinmenghuo
这帖子让我不得不提一个童年回忆的老古董“辣鸡”游戏,MapleStory 冒险岛。经常 4-8 小时维护,高概率延长维护时间,中概率更出 BUG 回炉甚至直接回滚数据,相当于每周有半天时间到一天时间歇着,而且棒子可以没有任何补偿,玩家几乎没有怨言
https://www.nexon.com/maplestory/news/maintenance/18272/completed-scheduled-maintenance-august-8-2024
wyxls
2024-08-21 08:50:02 +08:00
另外游戏服务器和商城服务器是完全两个玩意,两边氪金道具偶发性同步失败,需要玩家等待或者写 ticket 申诉反馈,余额偶尔需要玩家手动刷新才显示正常,等等等等情况,这种玩意要在手游里出现,我都不知道要补偿多少东西才行
wpblank
2024-08-21 08:53:55 +08:00
@wyxls 我就记得每次等冒险岛维护完,就去挖矿,因为地图资源会刷新。
wyxls
2024-08-21 08:57:16 +08:00
@wpblank 现在挖矿改成单独一套系统,叫专业技术,每天有疲劳值,低级矿材通过 NPC 直接进入地图循环刷,高级矿材在怪图随机循环生成,不需要等更新维护
Daniel17
2024-08-21 08:58:14 +08:00
游戏也有很多不停机的,不一定
Ayanokouji
2024-08-21 08:59:27 +08:00
也不是不行,王者荣耀就经常热更新。游戏嘛,停一会也无所谓的。
bruce0
2024-08-21 09:03:16 +08:00
分游戏类型吧, 像是王者,吃鸡这种, 房间对战的, 能做到不停服热更, 假设在玩的房间版本号是 1.1.0, 要更到 1.1.1, 只需要把新开的房间用 1.1.1, 1.1.0 的继续玩,对局结束, 后面再开用 1.1.1 就行了.

像是 mmorpg 类型的, 热更有点麻烦, 如果是逻辑用 lua 等脚本写的, 可以热更, 如果全 C++的, 用动态加载释放 .so 文件应该也能做到热更, 只是麻烦很多.

还是像楼上们说的, 游戏不是必需品, 提前发公告, 维护结束发奖励就行了, 简单可靠
Ocean810975
2024-08-21 09:06:12 +08:00
我玩炉石这么多年,唯一一次看见维护还是上次网易暴雪服务器炸了。

好像暴雪家游戏都没啥停服更新的。
lyxxxh2
2024-08-21 09:18:38 +08:00
大量数据,比如赛季更新,你敢热更新吗?
说白就是现在技术做不到。
就算能做到,所需要的代价,还不如停机稳妥。
SkywalkerJi
2024-08-21 09:27:39 +08:00
@lyxxxh2 #31
apex 就是热更新,赛季也是热更新。
JeffreyZhuang
2024-08-21 09:36:31 +08:00
维护都是一会的事,花的时间在新服上线后 QA 对正式运行环境做检查。
paopjian
2024-08-21 09:43:27 +08:00
都是屎山代码能用就行,国内自己重头研发的有几个?大部分不还是买过来的,买过来的也是屎山叠屎山,那维护就不如停机的了,反正用户也习惯了
mouyase
2024-08-21 09:44:14 +08:00
@qinmenghuo

维护四小时的游戏,当然是我们创啦。

尊敬的各位勇士:

  为了给各位勇士带来更优质的游戏体验,进一步加强游戏的安全性,我们将于 8 月 8 日(周四)5:00-9:00 对所有大区进行停机维护,整个维护过程预计需要 4 小时,因开机顺序以及数据维护内容差异,部分大区会提前开放。因停机给大家带来的不便,我们深表歉意。



停机时间:8 月 8 日(周四)5:00-9:00

  更新大区:所有大区
JustBecause
2024-08-21 09:49:24 +08:00
你们都说不存在停机四小时维护,但是我怎么这么熟悉,好像小时候玩的一款游戏就是每周四小时停机
是跑跑卡丁车?还是魔兽世界?(魔兽好像是每周四不是四小时)
印象中还是个有名气的游戏
EndlessMemory
2024-08-21 09:56:18 +08:00
游戏服务器半夜停机影响不大
laminux29
2024-08-21 10:26:59 +08:00
两个原因:

1.以暴雪为主的游戏厂商,极度傲慢,不关心玩家。它为了自己方便,就设计成每周一次停服维护,剥夺玩家权益。最近暴雪重新开服,又有很多玩家赶着去给暴雪送钱,我实在无法理解。

2.有很多厂商,为了所谓的版本统一,不管玩家诉求。其实很多玩家对游戏统一版本的要求并不高,游戏厂商完全可以分阶段同步更新,这样玩家就可以不用遭遇停服时间。Steam 上面就有不少联机游戏是这样做的。
dyllen
2024-08-21 10:35:33 +08:00
@jinliming2
@agdhole 是,我玩 dota2 从来没见过停服更新的,就见过全球登陆服务器崩的
pkoukk
2024-08-21 10:44:46 +08:00
啥游戏每周停机维护 4 小时?每周?有这么多更新么?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1066543

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX