英雄联盟LOL背后的高可用架构之道

百家 作者:聊聊架构 2018-03-05 05:34:03
作者|Roit公司工程师
编辑|薛命灯

美国拳头公司(Riot Games)成立于 2006 年,2009 年发行《英雄联盟》游戏,2015 年被腾讯全资收购,成为腾讯旗下的子公司。

几年来,《英雄联盟》获奖无数,来自世界各地的玩家促成了数千万人同时在线游戏的盛况。拳头公司把玩家的游戏体验放在第一位,他们的开发团队和基础设施团队为此做出了不可磨灭的贡献。来自拳头公司基础设施团队的工程师们分享了他们运维在线服务的发展历程,介绍了他们从手动部署到自动运维的演变过程。

拳头公司的在线服务运行环境十分复杂,他们使用了共有云和本地数据中心,这些数据中心遍布世界各地,如何快速做出服务变更,并及时将它们推送给玩家,同时又能保证不对玩家造成不好的影响,这是基础设施团队需要解决的重大难题。

任何一家公司都是从小做起的,刚开始的时候规模小,服务器也少,很多事情可以通过手动进行。但随着规模的增长,服务器越来越多,系统越来越复杂,人工干预容易出错,也跟不上变更的节奏,所以必然会走向自动化。系统也从单体变成了微服务,数据中心从一个变成多个,除了本地数据中心之外,还加入了公有云。开发、部署、测试、监控,这些环节一个都不能少。网络的部署和管理、应用程序的部署和管理、如何进行快速而安全的变更、如何保证数据的安全、如何进行失效备援以便提高可用性,如何为玩家带来最佳的体验,有太多的问题需要解决。而拳头公司的基础设施团队又是怎么做到这些的呢?

  • 第一章介绍了拳头公司的在线服务发展概况,简述了他们的调度系统、容器化进程、持续集成、网络管理、应用程序动态化。

  • 第二章深入介绍了他们的调度系统 Admiral。

  • 第三章详细介绍了叠加网络、OpenContrail 以及与 Docker 的集成。

  • 第四章介绍了他们是如何实现基础设施即代码的,还介绍了他们的负载均衡和失效备援策略。

  • 第五章介绍了他们的微服务生态系统,包括高度可移植性、动态配置、服务发现、全局搜索和秘钥获取等方面的内容。

  • 第六章介绍了他们的开发者生态系统,包括他们的开发者工具箱,如监控可视化工具、网络管理工具、服务搜索工具、构建跟踪工具等。

正如这些工程师所说的,拳头公司灵活而敏捷的氛围让他们可以为开发团队开发出真正有价值的工具,让他们能够专注在产品的开发上,从而把最好的游戏功能带给玩家。

点击阅读原文链接,即刻阅读(建议下载极客时间 App,阅读体验会更好)。

关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接