blog.su21.org   Archives  About

服务故障自动恢复

达达对服务器 crash 自动重启表示过反对。但鹅厂有种服务故障快速拉起的传统。

一开始我以为是两种大相径庭的观点,为此很困惑。 后来又觉得这两套不同的技术体系会有殊途同归之处。

『故障快速拉起』或者说『服务故障自动恢复』。 本质上意图是提高服务可用性。

达达不喜欢 crash 自动重启,但他的框架有很好的异常管理。 我想:

同一个目的,有两种看起来截然不同的手段,我大概想了以下原因:

技术特点

达达的游戏框架对可恢复的异常有充分管理进程本身不会轻易crash,除非遇到致命错误。

鹅厂常用 C++ 。 业务逻辑产生的异常未必容易捕获, 但 共享内存+无状态进程+快速重启进程+接入层重试 同样能做一些异常恢复。

其实发现两套不同的实践都达到了类似的目的。

组织架构:

达达是 CTO ,同时兼顾开发和运维职责。 他的程序在设计的时候就有考虑运维简单与可用性。

接入腾讯的游戏厂商和腾讯互娱运维是天然的 dev 与 op 分离。 程序能 crash 后快速拉起是让运维很舒服的事情,但 开发商未必有动力。

Written on Sep 4, 2018.