KMS在腾讯云的微服务实践助力其降本50%

这篇具有很好参考价值的文章主要介绍了KMS在腾讯云的微服务实践助力其降本50%。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景介绍

KMS 是一家日本的游戏公司,主要经营游戏业务、数字漫画业务、广告业务、云解决方案业务等,出品了多款在日本畅销的漫画风游戏,同时有网络漫画专业厂牌,以内容创作为目标,拥有原创 IP 创作、游戏开发等多元化发展的业务。

KMS 曾经是微软 Azure 的标杆客户,曾经在 Azure 的 Customer story 里有详细的介绍,主要是使用了 Azure 的 App Service。

2021年,KMS 开始迁移到腾讯云,并把第一款产品部署在了腾讯云上。从 Azure 迁移到腾讯云上后,整体成本降低50%。下面我们就来讲讲他们在腾讯云上的微服务实践。

挑战与痛点

KMS 的架构主要有以下特点:

1.  KMS 的架构设计的特点是围绕不同的游戏有不同的终端。

2.  但同时又有统一的后台管理平台、统一的底座等。

3.  客户在游戏场景的不同的客户端主要包括安卓,iOS,Web 等。此外,客户后端又分为战斗系统、管理系统、用户系统等。

4.  游戏业务通常都有波峰波谷,在业务高峰期的时候需要快速扩容来支持大量的游戏玩家;在业务低峰期的时候,需要缩容来节约成本。

那么基于此类场景的架构设计,面临最大的问题就是在游戏的不同时间段的弹性扩缩容问题。不同的业务模块需要弹性的频率和范围都是不一样的。不同的微服务划分会带来不一样的弹性伸缩频率和范围。这直接影响到了最终资源的用量,也就直接反应到了成本上。

架构设计

接下来就分别把 KMS 在腾讯云上的架构设计实践的几个部分分开来介绍一下。

整体设计

游戏业务通常都有各种客户端,比如安卓、iOS、网页等,为了应对不同的场景,架构设计上也应该有一定的区别。

首先,必须有 CDN 来提供静态文件的分发,包括游戏资源、安装包、图片等。这些文件底层都是存储在 COS 上的。

然后对于不同的客户端,会有不同的后端实例来承载它的流量。比如战斗系统,iOS 客户端在同一个战斗里的用户,会在同一套战斗系统的实例里。

那对于管控端来说,压力没那么大,可以所有的客户端都用同一套管控端的实例,因为它只负责一些通用的用户设置的管理等。所以通常访问的 QPS 不会太高。

下图就是 KMS 大致的整体架构图。

KMS在腾讯云的微服务实践助力其降本50%,腾讯云,微服务,云计算

弹性伸缩

在游戏高峰期,对于访问压力大的服务,怎么去解决这样的流量波峰波谷呢?

KMS 是选择使用腾讯云的弹性微服务来解决。

弹性微服务(Tencent Cloud Elastic Microservice)是面向微服务应用的 Serverless PaaS 平台,实现资源 Serverless 化与微服务架构的完美结合,为用户提供一整套开箱即用的微服务解决方案。

由于它已经 Serverless 化了,因此用户不需要再关心底层资源,只需要按照自己的使用量,配置对应的弹性伸缩策略,就可以在流量波峰来的时候,实现秒级的扩容。

弹性伸缩的策略也非常丰富,支持定时伸缩与指标伸缩。

定时伸缩可以根据业务的时间特征来设置,比如游戏的高峰通常是在晚上,而上午通常都是低峰期,那么就可以定时设置,上午只保留基本的资源量,保障较小的流量正常进行,以节约资源成本。在晚上高峰期,就可以提前拉起更多的资源,以保障晚上高峰期的资源充足。

KMS在腾讯云的微服务实践助力其降本50%,腾讯云,微服务,云计算

指标伸缩可以用来应对突发的流量。比如某个时间段因为某种原因突然来了大量的用户玩游戏,如果资源不足,等发现问题再扩容,可能导致用户体验差。这时就可以设置指标扩容,比如当服务的 CPU 或内存使用率达到60%用户就开始扩容,同时可以设置扩容范围,比如让实例数在1-50之间扩容。这样,就可以根据指标动态的保障用户的资源充足了。

KMS在腾讯云的微服务实践助力其降本50%,腾讯云,微服务,云计算

经过 KMS 实际的测试发现,在单个实例的测试场景中,同等规格的实例,性能上腾讯云的弹性微服务比 Azure 的 App Service 高15%,游戏响应延迟降低50%。KMS 迁移到腾讯云后,整体成本降低50%以上。

KMS在腾讯云的微服务实践助力其降本50%,腾讯云,微服务,云计算

DevOps

游戏业务通常都会有较频繁的发布周期,以满足快速发展的游戏市场,和满足不同玩家的游戏体验。

因此快速且安全的发布也必不可少。于是 KMS 搭建了一套能在弹性微服务上快速部署的 CICD 流程。如下图所示。

KMS在腾讯云的微服务实践助力其降本50%,腾讯云,微服务,云计算

首先,KMS 编写了大量的自动化测试,包括单元测试和集成测试。因为 KMS 是使用的 GitHub,所以在代码提交后,就会自动触发 GitHub Actions 运行测试、构建、上传等操作,实现自动打包构建镜像等,最后 CD 流程会把构建好的镜像部署到弹性微服务中去。

KMS在腾讯云的微服务实践助力其降本50%,腾讯云,微服务,云计算

这里的部署就需要说到 KMS 的分批发布实践了。

分批发布

KMS 原来在 Azure 的时候,做发布需要自己准备资源,并自行完成更新,同时需要自己保障过程中的滚动更新。而当他们使用了弹性微服务的发布之后发现,这个过程是如此丝滑。

KMS在腾讯云的微服务实践助力其降本50%,腾讯云,微服务,云计算

首先,弹性微服务会根据当前已有的实例数,选择分几批进行升级更新。每批次的发布都可以自动执行或者手动执行。在关键的发布时,KMS 会选择手动执行,这样每批次完成后,先手动验证一下功能的正确性,再进行下一批次的发布。

KMS在腾讯云的微服务实践助力其降本50%,腾讯云,微服务,云计算

如果某个批次的发布有任何问题,可以马上选择回滚,不会影响线上业务。

以上就是 KMS 在腾讯云上基于弹性微服务的分批发布实践。

其他设计

除了上面介绍到的实践之外,KMS 结合自身的业务特性,还做了很多额外的其他工作,来保障游戏服务的正常运行。

比如,为了更好的优化资源成本,KMS 会在夜间把测试环境的资源一键归零,然后在早上上班的时候一键开启。同时,此过程已经被 KMS 集成到自动化流程中,每天自动触发了。

KMS在腾讯云的微服务实践助力其降本50%,腾讯云,微服务,云计算

另外,在 App Service 之前若有实例存在内存问题时,需要重启。一般都需要1个小时左右。

KMS在腾讯云的微服务实践助力其降本50%,腾讯云,微服务,云计算

而 KMS 使用了弹性微服务之后,弹性微服务会对实例进行检测,若有问题会自动进行重启。这里主要是利用了弹性微服务的健康检测能力。

KMS在腾讯云的微服务实践助力其降本50%,腾讯云,微服务,云计算

此外,KMS 一共有4个游戏发行平台,4套环境,KMS 利用弹性微服务的环境管理,合理的分配了不同的平台,便于管理与运维,极大的提升了运维效率。

总结

KMS 是一家以内容创作和原创 IP 创作为目标的专业厂牌,曾是微软 Azure 的标杆客户,如今已经在腾讯云稳定运行超过2年了。

他们在2021年迁移到腾讯云后,通过合理的架构设计和产品使用,让他们成本降低了50%。

未来也期望 KMS 和腾讯云能有更多的合作,分享更多的架构设计经验和上云最佳实践。文章来源地址https://www.toymoban.com/news/detail-717680.html

到了这里,关于KMS在腾讯云的微服务实践助力其降本50%的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 北京筑龙智能寻源 |助力企业一站式智能采购,降本增效

    智能寻源——精准匹配,让采购更高效 智能寻源系统是北京筑龙为采购人搭建的一款全链路高效协同的采购寻源和供应商管理平台。助力采购人快速完成采购计划,提升采购效率,降低采购风险。 基于智能寻源系统,将全面打通供应商数据壁垒,解决企业与供应商信息不对

    2023年04月08日
    浏览(37)
  • Ruff物联网数采网关助力工业企业数字化转型,降本增效

    如今,随着工厂数字化转型进程的加速,越来越多的企业对于设备数据感知层及传输层的应用越来越重视,因此工业数采网关也走进了很多人的视野,在工厂数字化转型中扮演着关键角色。 物联网数据采集网关能将各种传感器、执行器等设备连接在一起,通过收集、处理和传

    2024年02月03日
    浏览(50)
  • 【腾讯云Finops Crane集训营】降本增效之 Crane 初体验

    最近有幸参加了腾讯云 Finops Crane 开源项目的第一季活动,对 Crane 有了一个深入的了解。作为一款云资源分析与成本优化平台,它为云原生领域相关的开发者和企业都提供了一种更简单、更高效的 Kubernetes 集群管理机制,正如 Crane 的愿景:“ 在保证客户应用运行质量的前提

    2024年02月05日
    浏览(55)
  • 【腾讯云 Finops Crane 集训营】降本增效?学会 Crane,就够了

    随着云原生技术的发展,越来越多的公司正在选择将应用运行在云上或者自建的 Kubernetes 集群上,但是许多机构的调研发现,绝大多数的用户集群资源利用率并不高,浪费严重。本文就带大家来了解Crane,以及通过实践,体验它的魅力。 Crane 是由腾讯云主导开源的国内第一个

    2024年02月05日
    浏览(37)
  • 【腾讯云 Finops Crane 集训营】降本增效利器Crane应用实战

    很荣幸参加了由腾讯云联合CSDN推出的“腾讯云 Finops Crane 集训营”,在集训过程,从0到1体验了Crane平台的搭建,也积极参与github的发言,提交两个issue帮助提升体验感。好了,话不多说,下面跟着我一起走入Finops Crane。 FinOps(Financial Operations)是一种管理云计算成本的方法,

    2024年02月05日
    浏览(75)
  • 【腾讯云Finops Crane集训营】降本增效神器Crane实战记录

    这段时间有幸参与了一下腾讯Finops Crane集训营的Crane公开体验训练营。 这不,给大家写一篇实战记录。 如下图所示,可以看到Crane的详细介绍: 简单的来说,就是在云原生技术不断发展和普及的大背景下,这是国内第一个基于云原生技术的成本优化项目,它遵循了FinOps标准,

    2024年02月06日
    浏览(47)
  • 腾讯云的cdn怎么配置|腾讯云CDN配置教程

    众所周知,WordPress系统不挂加速或者是服务器不好速度贼慢,所以要想办法解决访问速度的问题,经过我不断的研究腾讯云的CDN,因为我用的是zibll子比主题,不懂的就挂会导致无法使用第三方登录,因为有缓存导致一直不回调一直卡在那个登录界面和支付没反应要么出现二

    2024年02月02日
    浏览(36)
  • 阿里云/腾讯云国际站代理:国际腾讯云的优势

    国际腾讯云具有以下优势: 1. 全球覆盖:腾讯云在全球拥有30个区域,覆盖6个大洲,能够提供全球范围的云服务,满足不同地区用户的需求。 2. 大规模网络:腾讯云拥有庞大的全球网络,包括多个高速骨干网络节点,保证稳定、低延迟的网络连接,有助于提供高质量的云服

    2024年02月08日
    浏览(62)
  • FinOps能力成熟度模型启动,灵雀云助力云原生降本增效标准制定

    9月16日,在2022中国数据中心市场年会“降本增效分论坛”上,《云原生FinOps能力成熟度模型》标准正式启动,作为FinOps产业标准工作组首批发起成员和云原生技术领域的唯一代表企业,灵雀云出席并参与授牌。 随着云计算的深入,企业上云资源配置不合理、异构资源难管理

    2024年01月21日
    浏览(48)
  • 【基于腾讯云的远程机械臂小车】

    2023年04月08日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包