需永远在线的游戏公司,如何在线替换开源存储?

2fc582f52548cff21dcecf7585eb7ad1.jpeg

小帅是一个酷爱游戏的玩家,他玩一款游戏已经很久了,始终乐在其中。

这款游戏风靡全球,在中国手游出海榜单中,长期位居榜首。

他不知道的是,就在他玩游戏的过程中,这款游戏的出品公司,其实已经实现了旧有存储系统到全新存储系统的平滑迁移和无缝扩容。

在整个切换的过程中,作为出海成绩优秀、像小帅这样的玩家遍布全球多个国家的游戏,其游戏从未中断、流畅性也从未受到影响。

这种给处于高速发展且玩家众多的游戏公司,在线替换和扩容存储系统的行为,无异于给高速行进的动车更换全部发动机

其难度可想而知。

那么,该游戏公司的存储系统平滑迁移、过渡和无缝扩容,是怎么做到的呢?


游戏行业的存储架构部署

有何不同?


互联网和游戏行业的业务和 IT 模式与传统行业有着比较大的差异,无法进行充分的规划后再建设,而是需要快速开发上线验证,同时又可能面临着短期内指数级增长的可能,对基础架构和业务开发都带来了比较大的挑战。

前面提及的这家游戏公司就面临着这样的挑战。他们以创新的游戏玩法、精美的画面和深入的故事受到全球玩家的喜爱。

该公司致力于为玩家提供丰富多样的娱乐体验,并不断推出新的游戏内容和活动,与玩家保持良好的互动。他们在全球范围内拥有庞大的粉丝群体,是中国游戏产业的重要力量之一。

在业务建设的初期,由于只有图片和文档需要存储,该公司自然想到了使用对象存储来承接非结构化数据的存储。又由于没有足够的时间进行完整的商业化存储产品评估,并且前期数据规模不大,他们选择了开源对象存储。

但随着数据规模的快速增长和接入业务的增加,该公司在使用开源对象存储方案时,出现了一系列问题,如:

  • 各个部门自行搭建和管理开源对象存储,导致管理复杂,权限难以统一管理;

  • 各个部门独立搭建资源池,导致存储资源无法统一规划,也不利于进行跨部门的资源调度;

  • 开源存储方案的性能不足,无法满足业务发展的要求;

  • 开源方案缺乏企业级服务支持,导致故障和需求无人支撑;

在互联网和游戏行业中,这其实是非常典型的场景,而星辰天合针对这样的场景设计了完善的方案,也很快获得了该公司的信任。

该游戏公司选择与星辰天合合作,以星辰天合的备受市场认可的对象存储 XEOS V6 来替换原有的开源存储系统


如何实现新旧存储系统的

平滑迁移?


那么问题来了,怎么才能够实现平滑迁移?

在存储方案中,搭建和使用一套全新的存储并不是最难的,最大的挑战是保证新旧存储的平滑迁移和无缝切换。

这也是该游戏公司最关注的点。

在该公司中,由于多套开源存储已经对接了众多业务平台,要求业务平台进行统一的停机和切换是无法接受的,全球众多小帅那样的玩家也不可能接受。

好在,对于多年处于市场领先地位的星辰天合对象存储 XEOS 而言,应对这样的需求已经是驾轻就熟。

对象存储 XEOS V6,可以提供重建迁移的方案,帮助该游戏公司实现平滑的数据迁移,其流程如下,只需要四步:

79fdfbda4e484469811ac0750065cfe6.jpeg

该网游公司的存储迁移方案步骤演示


  • 配置透明访问:确保对旧存储中数据的透明访问,保持业务的连续性;

  • 切换业务到XEOS V6:将业务逐步切换到XEOS V6上,确保业务平稳过渡;

  • 扫描重建元数据:对旧存储中的元数据进行扫描和重建,确保元数据的准确性和完整性;

  • 迁移数据:通过数据迁移机制,将数据从旧存储迁移到XEOS V6上,实现无缝过渡。

其实,客户另外还有一个头痛许久的问题,就是他们此前部署的开源存储性能已经满足不了业务要求,经常出现响应慢和负载高的情况,比如在业务高峰期查看用户高清头像时经常需要等待十几秒,这对于玩家来说,是非常不爽的游戏体验。

考虑迁移动作可能给开源存储带来新的元数据和数据访问的负载,该公司十分关注如何避免这部分新负载进一步影响开源存储的性能。

在方案交流过程中,星辰天合推荐了 XEOS V6 提供的迁移 QoS 控制的功能,让客户进一步感受到 XEOS 针对该场景的周全考虑。通过 QoS 控制,XEOS 可以合理调节迁移过程中的负载,确保业务访问和数据迁移的平衡,提高系统的性能和稳定性。


怎么把所有的业务

都迁移到新存储平台?


在完成数据和业务迁移方案的规划后,该游戏公司又针对现网情况提出了新的要求。因为原有的多套开源存储接入了众多不同业务和部门的访问,要求所有业务在同一时间点切换到新存储是不合理的,需要星辰天合提供一个平滑的业务过渡方案。

为解决这个问题,星辰天合在该客户的实践中采取了以下方法,利用了 XEOS 已有的相关能力:

49debee8dd199dac0bb9f8cd37b628c0.jpeg

实现从开源存储到 XEOS 的平滑过渡


  • 业务 1 首先完成开源存储迁移和替代,数据读写都在 XEOS V6 上进行;

  • 业务 2 尚未完成切换,同时又需要访问业务 1 产生的新数据;

  • XEOS V6 利用桶复制功能,将业务 1 写入和删除的 IO 操作复制到开源存储中,业务 2 仍然可以通过访问开源存储来获取已经切换的业务产生的新数据,实现了业务之间的无缝连接和互通。

这种方案允许该游戏公司的部分业务先切换到 XEOS V6 上,确保其数据的正常读写,同时保留了与其他业务的数据互通能力

在看到 XEOS V6 提供的完善的企业级功能和极高的性能后,各个业务和部门也快速推进改造和切换,随着其他业务逐步切换到 XEOS V6 上,整个系统将实现完全的平稳过渡和无缝切换。


如何才能够实现无缝扩容

服务更多游戏玩家?


该游戏公司的多款游戏备受海外玩家青睐,接入到其存储系统的业务也逐渐增多,数据也在加速增长,存储系统必须能够轻松扩容以提供更完善的服务。

但是,开源对象存储的扩容,一直是老大难问题。

这正是促使该游戏公司跟星辰天合沟通,试图进行专业存储方案建设的重要因素之一。

在完成对开源对象存储的替换后,利用星辰天合提供的平滑扩容和非结构化统一存储的方案,该客户轻松实现了无缝的扩容并构建了统一的数据湖。

通过星辰天合的平滑扩容方案,该游戏客户既能够按需扩展存储容量,也无需中断现有业务的运行。这为业务提供了充分的灵活性和可持续增长的存储能力,满足了不断增长的业务需求,让来自全球的小帅们能够轻松享受该游戏公司构筑的虚拟世界

此外,星辰天合的非结构化统一存储方案为该公司提供了统一的存储资源池。在这一资源池上,该游戏公司不仅完成了 XEOS V6 对开源对象存储的替换,还搭建了 XGFS 文件存储服务。

通过统一的数据湖架构,该游戏公司不同的数据源和业务系统可以集中存储和管理数据,实现了数据的统一视图和共享,方便了数据的分析、挖掘和利用。


选择XEOS

轻松应对挑战


在很多企业的业务创新初期,由于缺乏时间进行完整的商业化存储产品评估,并且业务规模不大,企业选择采用开源搭建的方式可以快速满足业务需求。

而开源方案提供了灵活性和快速部署的优势,适合初期业务的快速迭代和试验。

然而,随着业务的发展到一定阶段,开源方案的问题开始显现。此时,已经建立的开源方案已经承接了生产业务,如何平滑地迁移和替换成为一个挑战。

XEOS V6是星辰天合提供的专业存储解决方案,它能够解决上述挑战,就像本文中的游戏公司一样,在线完成存储系统的替换和升级,轻松实现对更多客户的更优服务。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/132537.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

什么是存储服务器?

随着互联网的发展,越来越多的信息会在网络上暴露,所以企业就会更加重视数据,因此更加安全可靠的数据存储服务器受到了大多数人的信赖,今天就让小编带大家了解一下什么是存储服务器吧! 存储服务器的含义。存储服务器是…

Nginx解析漏洞

常见的解析漏洞&#xff1a; IIS 5.x/6.0解析漏洞 IIS 7.0/IIS 7.5/ Nginx <0.8.3畸形解析漏洞 Nginx <8.03 空字节代码执行漏洞 Apache解析漏洞 Nginx文件解析漏洞 对于任意文件名&#xff0c;例如:cd.jpg在后面添加/x.php后&#xff0c;即可将文件作为php解析。 原理…

SpringMVC简介

SpringMVC概述 SpringMVC是一个基于Spring开发的MVC轻量级框架&#xff0c;Spring3.0后发布的组件&#xff0c;SpringMVC可以和Spring无缝整合&#xff0c;使用DispatcherServlet作为前端控制器&#xff0c;且内部提供了处理映射器、处理适配器、视图解析器等组件&#xff0c;…

RecyclerView 空白区域点击事件

在项目中使用RecyclerView展示列表数据&#xff0c;用了GridLayoutManager&#xff0c;在遇到item个数不满足一行时&#xff0c;会在页面右侧透出空白位&#xff0c; 如下图所示. 目前点击空白位是没有点击响应事件的&#xff0c;我们想实现点击响应以扩大用户可以进入LandingP…

PyTorch 深度学习之处理多维特征的输入Multiple Dimension Input(六)

1.Multiple Dimension Logistic Regression Model 1.1 Mini-Batch (N samples) 8D->1D 8D->2D 8D->6D 1.2 Neural Network 学习能力太好也不行&#xff08;学习到的是数据集中的噪声&#xff09;&#xff0c;最好的是要泛化能力&#xff0c;超参数尝试 Example, Arti…

S/4 HANA 大白话 - 财务会计-4 应付、应收账款

Business Partner 业务伙伴 业务伙伴现在包括供应商伙伴和客户伙伴。 只要不是个搞空壳玩泡沫的公司&#xff0c;你基本都得有从供应商那里拿原材料或者购买零部件&#xff0c;然后进行生产&#xff0c;再售卖给客户。你得和银行打交道&#xff0c;同时也得有员工。所有这些关…

LeetCode【11】 盛水最多的容器

题目&#xff1a; 分析&#xff1a; 1、双指针&#xff0c;储水为&#xff08;R-L &#xff09;* 二者较小高度&#xff0c;如题目&#xff0c;(9-2)* 7 49 2、双指针向中间靠&#xff0c;每次移动较矮的指针。 代码&#xff1a; public int maxArea(int[] height) {int l…

关键词搜索淘宝商品数据接口,淘宝商品列表数据接口

关键词搜索淘宝商品数据接口可以通过淘宝开放平台获取商品列表数据&#xff0c;包括商品标题、价格、优惠价、收藏数、月销售量、SKU图、详情页图片等。 通过调用淘宝开放平台的API接口&#xff0c;可以实现关键词搜索淘宝商品列表数据&#xff0c;获取商品详情页数据信息&…

【FreeRTOS】【STM32】03 FreeRTOSConfig.h头文件简介与修改

基于[野火]《FreeRTOS%20内核实现与应用开发实战—基于STM32》.pdf FreeRTOSConfig.h头文件是FreeRTOS各项功能的打开与关闭 FreeRTOSConfig.h头文件简介 之前也说过了&#xff0c;FreeRTOSConfig.h文件可以添加在工程中任意文件夹&#xff0c;只需要在路径中添加好了就行。…

ARM作业2

.设置按键中断&#xff0c;按键1按下&#xff0c;LED亮&#xff0c;再按一次&#xff0c;灭 按键2按下&#xff0c;蜂鸣器响。再按一次&#xff0c;不响 按键3按下&#xff0c;风扇转&#xff0c;再按一次&#xff0c;风扇停 头文件key_it.h #ifndef __KEY_IT_H__ #define …

项目风险管理:通过五步降低风险

最完善的项目也会有风险&#xff0c;如果管理不当&#xff0c;项目的成功岌岌可危。 好在项目风险管理可以挽救这一切。事实上&#xff0c;只要投入时间评估项目风险并制定风险管理计划&#xff0c;就能成倍提高成功率。 什么是项目风险管理&#xff1f; 项目风险管理包括识别…