50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

Roblox 如何从 73 小时故障中吸取教训,为 7 千万用户提供可靠服务

作者:Matt Saunders

  • 2024-01-16
    北京
  • 本文字数:1628 字

    阅读完需:约 5 分钟

Roblox 如何从 73 小时故障中吸取教训,为 7 千万用户提供可靠服务

在线游戏平台和创作系统 Roblox 详细介绍了他们如何提升其基础设施的效率和弹性,满足 7 千多万活跃用户参与沉浸式游戏体验的需求。这篇博 深入探讨了 Roblox 如何实现可靠性承诺、如何应对 2021 年的重大故障以及如何通过持续转型来提升基础设施的效率和弹性。


2021 年 10 月,Roblox 遭遇了持续 73 小时的系统范围的故障,这是由一个数据中心的一个小问题引发的,然后迅速演变成大规模故障。通过事故后分析,团队加大了巩固其基础设施的工作,以应对各种故障因素,如流量峰值、天气条件、硬件故障、软件错误和人为失误。重点是防止单个组件的问题扩散到整个系统,并确保网络或用户持续重试操作不会造成与负载相关的级联故障。


为了应对类似 2021 年 10 月的故障,Roblox 最初在不同区域的数据中心采用主备方式构建了基础设施的副本。这意味着团队可以在主数据中心出现重大故障时将整个系统切换到备份基础设施上。这提供了一种应急的弹性形式,但他们的长期目标是从主备数据中心转变为双活,让两个数据中心同时处理工作负载,实现更高的可靠性和几乎即时的故障切换。


Roblox 还实现了蜂窝基础设施架构,在数据中心内建立强大的“防爆墙”,防止发生整个数据中心范围的故障。蜂窝蜂窝单元或机器集群在单个蜂窝单元内提供冗余和故障控制。Roblox 的目标是将所有服务迁移到蜂窝单元中,以此来增强弹性和高效的工作负载管理,整个蜂窝单元(每个蜂窝单元可能包含 1400 台服务器)可以在必要时进行修复或完全重新配置。这个过程需要确保一致性,要求服务进行容器化,并实现基础设施即代码的理念。Roblox 新的部署工具会自动确保服务跨蜂窝单元分布,从而使服务所有者不必考虑复制问题。


Roblox 将蜂窝单元作为一种防火门,可以将故障限制在一个蜂窝单元内。目标是使蜂窝单元变得可互换,以便在出现问题时更快地恢复。然而,管理蜂窝单元之间的通信存在一些挑战,因为需要防止“死亡查询”,即重试查询会导致级联故障。他们正在部署短期解决方案,例如将计算服务的副本部署到每个计算蜂窝单元中,并在蜂窝单元间平衡流量,以此来缓解这种情况。他们的长期计划包括实现用于服务发现的下一代服务网格以及将依赖请求定向到与原始调用方相同蜂窝单元的方法。这将降低故障从一个蜂窝单元传播到另一个蜂窝单元的风险。70% 的后端流量现在由蜂窝单元提供,他们的最终目标是达到 100%。近 3 万台服务器正在运行蜂窝单元,但这还不到总服务器数量的 10%。


在不中断用户的情况下迁移一个非常繁忙的在线平台的复杂性是巨大的。由于没有大量的资金购买全新的服务器来运行蜂窝基础设施,Roblox 创造性地利用了一小部分备用机器,并策略性地建立了新的蜂窝单元,逐步迁移工作负载,然后重新使用已释放的机器来进行下一次迁移。这在不同的数据中心之间造成了一些理想的蜂窝单元碎片,增加了蜂窝单元内的弹性。Roblox 预计将于 2025 年完成迁移,他们需要强大的工具来部署均衡的服务,并且不会干扰到用户,他们还需要进行详尽的测试,确保在蜂窝架构中运行的新服务的兼容性。



Roblox 的努力取得了成功,但针对蜂窝单元的工作仍在进行中。他们致力于在不断扩展规模的过程中提高效率和弹性。他们的主要成就包括建立第二个数据中心,在主备数据中心创建蜂窝单元,将超过 70%的后端服务流量迁移到蜂窝单元中,以及建立了实现一致性的要求。2023 年 9 月,Roblox 在数据中心启动了双活实验,增强了可靠性并最大限度地缩短故障转移时间。这些成果让他们获得了一个实现全面双活基础设施的计划,确定了改进系统设计的模式。他们一直致力于提升效率和弹性,设想让平台成为数百万用户可靠、高性能的实用工具,并实现实时连接十亿人。


他们的基础设施现在运行在近 14 万 5 千台服务器上(大部分在本地私有混合云中心)——两年内增加了三倍。Roblox 目前正在努力改造基础设施,使平台更具弹性,更加高效,为数百万用户提供服务,为持续的增长和创新奠定基础。


原文链接

https://www.infoq.com/news/2024/01/roblox-cellular-infrastructure/

2024-01-16 08:007793

评论

发布
暂无评论
发现更多内容

VMware停服在即,运维焦虑?青云云易捷提供“终身”保障!

智驱前线

AI刷新赛事体验,PAI-ArtLab支撑“我的NBA AI手办”互动

阿里云大数据AI技术

人工智能 阿里云 PAI NBA

java操作hbase报错:KeeperErrorCode=NoNode for /hbase-unsecure/master

刘大猫

人工智能 云计算 大数据 算法 物联网

字节开源 MineContext:截屏+理解上下文;OpenAI 宣布自研 AI 芯片丨日报

声网

驳“AI 泡沫论”:一场被误读的、正在进行中的产业结构性调整

Baihai IDP

人工智能 AI AIGC LLM AI泡沫

ToDesk/向日葵/UU/AnyDesk远程安全与连接能力PK,谁才是真稳如老狗?

小喵子

远程 远程控制 向日葵 ToDesk AnyDesk

连锁餐饮拓展微信业务:试错 3 个月,终于找到靠谱方案

微擎应用市场

如何基于阿里云 ECS 一键部署 AskTable?实现数据智能洞察

察言观数 AskTable

数据洞察力 智能 BI AskTable 阿里云 ECS AI 问数

AI前沿|政务大模型部署指引印发、北京市人工智能标委会成立

Fabarta

【技术解决方案】联邦学习中遇到的Non-IID问题——隐语SecretFlow

隐语SecretFlow

联邦学习

企业日志管理终极指南:3步实现自动化收集、低成本存储与智能分析

运维有小邓

实时 Web 日志分析器 日志管理 日志管理工具 #日志分析 日志管理软件

Voice Agent 开发者第一课:成为进阶语音 AI 玩家,你需要了解这些丨Convo AI&RTE2025

声网

AI质检与MES系统深度融合:构建智能制造质量管控新模式

万界星空科技

mes 万界星空科技mes 智能化MES AI智能化MES AI质检

会议日程新鲜出炉!2025 Altair 数字孪生技术会议火热报名中

Altair RapidMiner

AI 数字孪生 仿真 高性能计算 CAE

双活中心建设方案

金陵老街

信息安全 双活中心

Goroutine间的“灵魂管道”:Channel如何实现数据同步与因果传递?

poemyang

golang 并发编程

组合为什么优于继承:从工程实践到数学本质

canonical

面向对象 组合 可逆计算

反射型XSS与自反型XSS深度解析

qife122

网络安全 漏洞挖掘

体育视频直播全球分发系统

ggscoreLynne

veDB-Search:AI 混合检索,懂 SQL 就行

字节跳动数据库

向量数据库 rag 混合搜索 火山引擎数据库 veDB

云防护栏理论:应对云配置错误的安全防护策略

qife122

azure 云安全

SaaS 系统越来越多,为什么需要一个 iPaaS 来统一管理?

谷云科技RestCloud

SaaS 数据处理 数据传输 集成平台 ipaas

国产算力,正在AI工作站里“生根”

脑极体

AI

好用!4种真免费的AI接口整理!

王磊

理想照进现实:零碳园区面临的挑战与破局之道

西格电力

绿色低碳 新能源 碳实践 零碳园区 低碳转型

面向企业构建科学完善的财务报告解决方案

智达方通

企业管理 全面预算管理 财务管理

大数据-125 - Flink 实时流计算中的动态逻辑更新:广播状态(Broadcast State)全解析

武子康

Java 大数据 flink spark 分布式

融云:用 AI 提升应用活跃度,6 个实用玩法亲测有效

融云 RongCloud

20个低代码开发平台全景解析与多维对比

优秀

低代码 低代码开发平台 低代码平台

行业分享丨重庆望变电气如何利用AI X 变压器空载损耗快速预测

Altair RapidMiner

人工智能 AI 汽车 仿真 CAE

超越环保:零碳园区的经济与社会价值论

西格电力

绿色低碳 新能源 能源经济 零碳园区 低碳转型

Roblox 如何从 73 小时故障中吸取教训,为 7 千万用户提供可靠服务_架构_InfoQ精选文章