前期准备:游戏架构改造
更新时间:
2019/10/21 GMT+08:00
应用容器化改造有三种方式,您可单击这里查看。本教程以某游戏为例,将该游戏进行微服务的架构改造,再进行容器化。
本教程不对改造细节做深度讲解,仅讲解大致的建议。如需要详细了解容器化改造的过程,请单击服务咨询。
容器化改造建议
游戏demo原有架构如下:
从图1可以看出:
- 游戏包含三个组件:wow-auth登录认证系统、wow-world游戏服务器、mysql数据库。
- 一台虚机安装了wow-auth登录认证系统及其依赖;两台或多台虚拟机安装mysql数据库及其依赖;三台或多台虚机安装wow-world游戏服务器及其依赖。在当前的架构下,如果有多个游戏服,需要多台虚机来安装。这就引发了这个架构带来的关键问题:部署重,需要准备多台虚拟机,并为每个虚拟机装上不同组件所需的依赖包。
- 扩展差,伸缩困难,维护成本高:新增服务器时,需增加新的虚拟机,再安装游戏服。且多台虚拟机维护十分复杂。
- 升级困难:每次升级需要多台虚拟机逐台配置升级,耗时久且容易出错。
针对该游戏架构,建议做如下修改:
如图2,将游戏的三个组件(wow-auth登录认证系统、wow-world游戏服务器、mysql数据库)分别容器化,部署在虚拟机中。实现如下优势:

在本demo中,用了mysql作为数据库,并对mysql也做了容器化的改造。在真实商用时,请根据自身业务选择数据库。
- 部署轻便:将游戏的三个组件分别制作为容器镜像,并将镜像上传到容器镜像仓库中。通过CCE云容器引擎可以直接基于该镜像部署容器应用。
- 扩展性好,伸缩迅速:当需要新增游戏服时,再启动一个容器即可。容器可实现秒级启动。
- 升级方便:升级时更换镜像即可快速升级。且CCE支持滚动升级,在升级时无需中断业务。
父主题:
游戏应用容器化部署
相关文档
相关产品
