
服务器性能和保证的正常运行时间对于游戏开发和采用至关重要。 但是,稳定性还可以通过减少创新和维护成本来实现。 CTO面对这种持续的平衡行为是否有解决方案?
在本文中,我们深入探讨了为什么容器可能成为游戏开发公司所寻求的动力的四个原因。
- 下载Spectrite Mod 1.12.2 / 1.11.2
- 南方公园:进攻之棒
- ZX Spectrum黄金岁月-第三部分
- 中年玩家:我的控制台,我的PC,我的控制台!
- Atelier Firis炼金术士与神秘之旅评论
1.更快的部署时间,更快的恢复
想象一个新玩家试图启动游戏而无法加载第一个屏幕。 或者是经验丰富的玩家,在关键的突袭中处于落后状态。 玩家善变,要求苛刻。 不可否认的是,性能低下的成本对于游戏开发团队来说太高了,以至于冒着性能问题的风险。
防止延迟的一种选择是在比所需级别高得多的级别上运行服务器资源。 实际上,这是不切实际且昂贵的。 相反,DevOps团队可以使用容器来降低平衡成本与性能的风险。 容器部署时间几乎是瞬时的。 这主要是由于容器共享OS内核,而不需要新安装的服务。
由于容器映像可以立即部署,因此毫不延迟地将更多资源提供给陷入困境的服务器。 容器化使团队能够按照“及时”的扩展原则进行操作,并充满信心,增加更多的功能每次都能立即,准确地部署。
2.更有效的负载平衡
容器共享操作系统的另一个好处是开销大大减少。 容器化系统使用更少的RAM,并允许进行持续的负载平衡-进一步降低了扩展AAA游戏的成本。


因为容器共享同一操作系统,所以运行时永远不会复制应用程序逻辑。 您可以多次启动同一进程,而不需要更多的内存。 但是,在共享程序的实际字节码的同时,将照常消耗存储每个实例的运行状态所需的内存。 此外,与VM不同,容器不需要为OS预先分配内存部分,因此安装起来轻巧得多。 您可以在主机服务器上运行数千个容器,而使用VM几乎是不可能的。
最大的好处:高效的资源共享意味着所有连接都保持平稳运行 -随着更多玩家上线,您的玩家将不太可能注意到性能下降。
3.强大的开发团队
通常,稳定性的必要性意味着新功能无法尽快部署到播放器上。 容器通过将构建的所有权直接交给工程师来帮助解决此问题。 使用Docker映像编译容器很简单。 不需要复杂的配置脚本即可在集群上安装新的微服务-只需将映像交给生产集群即可运行。 发行新的微服务成为一项以开发为主导的计划-让他们专注于创造最佳的游戏体验,而不必与部署管理进行斗争。
英雄联盟的创建者Riot Games已转而使用容器进行连续部署以获得稳定性。 使用Docker容器文件意味着他们可以实现其核心原则:在其构建环境上拥有真正的工程所有权。 开发人员发现迭代和向其受众部署改进的速度更快,这意味着《英雄联盟》的玩家始终可以获得最佳的体验和最新的代码。
最大好处:更快的迭代和改进部署
4.跨多个环境充满信心地进行部署
在进行容器化之前,部署的可移植性通常取决于运气。 容器将应用程序需求与基础架构限制区分开来,因此代码在多个环境中的功能相同。
通过在其中包含的代码,文件系统,进程和应用程序周围画一个黑匣子,容器有效地成为具有输出和输入的构建块-几乎不会影响其中的操作。 容器可以在服务器之间移动,这使硬件维护更加简单。 它们也可以在不同的开发环境中移动和部署,这意味着将相同的代码从开发阶段转移到生产阶段很容易。
最大收益:与环境无关的部署意味着开发团队可以保留对登台,QA和生产环境的责任。 测试新代码变得不再是依赖依赖的猜测游戏,而是更多地专注于玩家体验。
学到更多
我们预计将会看到更多的AAA游戏移至容器中,从而为工程和开发团队带来许多好处。 有关容器及其对游戏公司的好处的更多信息,请查阅100TB的白皮书,《利用容器化游戏的力量》。