博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《原神》运维自动化的探索与实践
阅读量:3572 次
发布时间:2019-05-20

本文共 1532 字,大约阅读时间需要 5 分钟。

2020 年 9 月 28 日清晨米哈游办公区域,《原神》运维团队与 OpsMind 重保团队严阵以待,迎接提瓦特大陆第一批旅行者。

两个月后,《原神》陆续拿下 Google Play Best of 2020 和 App Store Best of 2020 等荣誉,成为谷歌和苹果双平台全球年度游戏。

​新年伊始,《原神》运维团队为我们揭示了《原神》运维自动化技术的探索实践经历。

 

时间是唯一的敌人

运维自动化是必然,时间是我们唯一要跑赢的敌人。

与米哈游现有项目对比,《原神》在服务器数量及运维工作量上都面临较大挑战,如何通过运维自动化工具支撑超大规模集群的发布管理没有经验可寻。

然而,是采用自研还是商业方案是首先面临的决策,运维工具的效率、稳定性及满足游戏上线要求是重中之重。要想在短时间内由 0 到 1 自研运维自动化工具是一项低投入产出且高风险的技术投资。在时间和人力不充裕的情况下,选择采用现有的商业方案显得可行性更高。在待考察的方案中,不乏一些在运维行业内比较知名的商业化方案。在深入调研后,发现这些方案各有优缺点,比如有些平台功能不足无法满足定制化的需求;而有些产品研发与交付服务是割裂的,如果出现 Bug 或新的功能需求,须由产品研发团队评估后才能排期立项,少则数月、多则半年,甚至可能 石沉大海。

在探索过程中,OpsMind 低代码运维开发平台的产品形态非常特别,能通过很少的人力,在短时间内搭建起一体自动化运维平台,切中《原神》的痛点。并且可以快速的以周为单位进行 Bug 修复、功能更新迭代,而《原神》运维开发只需要专注自动化工作流的设计编排以及业务方的需求实现。

挑战无处不在

由于《原神》面向的是全球用户,大陆、海外包含多个区服,服务器量大,上线时又要保证任务下发百分百无误;这对米哈游和 OpsMind 都是很大的挑战。面对 100% 成功率的目标,双方一同配合查找影响成功率的问题点,在多层代理、自动检测专线健康度、优化超时处理机制、数据进一步压缩等措施下,最终以 100% 的任务下发成功率完美支撑了《原神》的上线。

对游戏行业来说,快速迭代、快速发布是普遍需求。在追求效率的同时,更加强调质量。为了提升运维质量以及与其他部门的配合效率,需要快速搭建起贴近自有业务场景的运维平台。包括监控、发布自动化、CMDB 等,并且数据彼此互通,可提供给游戏研发及其他部门或系统使用。基于这个目标,《原神》运维团队与 OpsMind 从建模设计、工作流业务划分、页面的配置、自定义指标的收集与下发策略等几方面入手,在一个月内将整个体系搭建起来。为了整体替换老系统,并兼容老系统对外输出的 API,OpsMind 开发 Endpoint 功能,通过 Endpoint,《原神》运维团队可自定义 API 调用格式,驱动工作流执行。

“因为 OpsMind 产品的灵活性、功能的全面性,使它可以满足《原神》项目运维的所有需求,这是一个很大的优势,这就使我们可以把其他工具都扔掉只留 OpsMind 。可以说《原神》和 OpsMind 是相互成就,相互成长。”《原神》项目运维团队表示。

值得期待的 OpsMind

《原神》是一款研发难度极具挑战性的游戏,《原神》的运维工作也同样极具挑战性。经过一年的合作,OpsMind 在产品和性能上有了很大的提升,实现了高速成长。

“希望 OpsMind 近阶段在做的监控系统性能优化工作能取得一个很好的成果,这也会极大提升《原神》运维的工作效率。此外,对于 OpsMind 正在做的平台侧的改造,使交互变得简便,可以降低平台的使用门槛,提高配置效率,也是我们非常期待的。”《原神》项目运维团队负责人表示。

转载地址:http://mkbgj.baihongyu.com/

你可能感兴趣的文章
Git与远程仓库关联以及关联错误解决方法
查看>>
[HDU] 平方和与立方和
查看>>
[HDU 2096] 小明A+B
查看>>
[HDU 2520] 我是菜鸟,我怕谁(不一样的for循环)
查看>>
[HDU 1215] 七夕节(求因子,不超时)
查看>>
[POJ 1915] Knight Moves
查看>>
Memcache技术精华
查看>>
Redis详解入门篇
查看>>
php开启redis扩展包与redis安装
查看>>
php使用openssl来实现非对称加密
查看>>
pdo如何防止 sql注入
查看>>
myisam和innodb的区别
查看>>
MySQL建表规范与注意事项(个人精华)
查看>>
JDK8接口的新特性
查看>>
synchronized的局限性与lock的好处
查看>>
redis和memcached有什么区别?
查看>>
Spring中的设计模式
查看>>
如何设计一个秒杀系统 -- 架构原则
查看>>
如何设计一个秒杀系统 -- 动静分离方案
查看>>
JWT 快速了解
查看>>