11月1日晚,刚过完五周年生日的《王者荣耀》官方宣布2020年日活跃用户数1亿,成为国内乃至全球首个日均DAU过亿的手游。与此同时,腾讯云TcaplusDB作为《王者荣耀》的数据库服务产品,成为全球首款支持过亿DAU游戏的数据库。

任何一款游戏的成功都不是偶然的,《王者荣耀》在保证游戏的挑战性、趣味性和多样性上做了很多功夫,仅系统就有几十个,包括战斗系统、玩家系统、铭文等。目前,《王者荣耀》的后台数据量已高达数百TB,1个区有100多个表且还在不断增加。这就致使了《王者荣耀》对数据库性能、稳定性、扩缩容、成本、游戏特有场景等方面有着更高要求。

对于《王者荣耀》而言,数据库是灵魂,承载着所有系统的信息落地,而专为游戏而生的腾讯云自研分布式NoSQL数据库TcaplusDB,5年来一直为《王者荣耀》的核心数据提供数据库服务。可以说,每一次的玩家登陆、每一局的对战、每一轮的录像回放都是对TcaplusDB的考验,每一次的团战都需要在海量的数据中进行增删改查。

“我们对比过很多数据库,在目前王者的数据容量和并发条件下,TcaplusDB的读写时延是最稳定的!”《王者荣耀》相关技术负责人评价道。在他看来,TcaplusDB高并发、低时延、低成本的性能优势为《王者荣耀》的数据运行和游戏业务场景提供了强劲支撑。

具体来说,TcaplusDB拥有接近无限的水平扩展能力。基于shard分片的分布式技术,其单表容量可以支持2.56 PB,吞吐能力随硬件扩充呈线性增长。同时,通过快慢请求分离与记录级锁,它可以解决复杂请求和简单请求的隔离,减少锁定范围提升读写效率。此外,基于创新算法,TcaplusDB可以在一个进程中实现冷热数据的交换,解决跨进程数据交换的一致性、可用性与管理复杂等问题。

从游戏业务场景的角度出发,TcaplusDB支持表级和记录级的数据生命周期管理,能够有效实现活动数据的过期清理。此外,基于冷备数据和二进制日志数据,TcaplusDB还可以针对全服级、表级、记录级或按照指定条件进行回档,且时间精确到毫秒。

另一方面,面对海量增长的用户数,系统稳定和扩容一直是《王者荣耀》的关注焦点。

不管是每年的“开黑节”、春节期间的DAU上涨还是5周年庆的计划性扩容,TcaplusDB都能在应对频繁扩容需求的同时确保着5个9的高可用性。

2020年春节,TcaplusDB陆续对各个大区7个表进行了15次扩容,扩容集群服务只增加了20组。最后一次扩容,在1小时内完成了突增100万-200万 PCU扩容,且在扩容过程中玩家无感知。

这是个几乎不可能完成的任务,但TcaplusDB交上了满分答卷。它是怎么做到的?

首先是理解应用的自动负载均衡和过载保护。以过载保护为例,TcaplusDB能站在“游戏服务器”的视角感知业务过载,通过处理时延、队列长度、成功率等指标综合评估数据库的负载能力,对高负载应用进行保护,防止雪崩发生。

同时,TcaplusDB针对计划内扩容和计划外扩容,提出了不同的解决方案,根据实际情况随机应变,灵活处理,并通过对可用区故障的自动切换与修复,在技术上支持跨可用区和单设备的故障自动切换和修复,既保障了扩容的速度和效率,又做到对玩家的完全无感。

值得一提的是,这不是首次面对这样的挑战。早在2017年春节期间,TcaplusDB就经历了连续七天的深夜扩容,在系统能力不足的情况下,通过开启读分流规避方案,成功度过高峰期。S赛季期间,由于玩家想看的赛季场数超过最初设计的10场,TcaplusDB是进行了大规模改表结构,紧急支持表结构修改对用户无感方案。

历经腾讯内部8年的游戏经验积累,TcaplusDB数据库已广泛应用于《王者荣耀》、《刺激战场》、《穿越火线》、《火影忍者》等数百款流行游戏,并通过腾讯云向全球游戏业务提供服务。

未来,随着以《王者荣耀》为代表的手游市场迈入新台阶,腾讯云数据库也将持续投入资源以丰富游戏行业的技术产品生态,不断提升综合服务能力,助力手游市场高质量快速增长。

本文由博客一文多发平台 OpenWrite 发布!

什么数据库能抗住《王者荣耀》的1亿DAU?相关推荐

  1. 互联网日报 | 1月26日 星期二 | 恒大汽车引入260亿港元战投;王者荣耀投入10亿助推全民电竞;巴士管家完成首个百城目标...

    今日看点 ✦ 恒大汽车引入260亿港元战略投资,用于研发生产投入 ✦ 小米11销量强劲.海外再传喜讯,POCO C3在印度销量突破100万台 ✦ 华为公布三大健康研究项目,发力可穿戴健康研究 ✦ 王者 ...

  2. 《王者荣耀》2亿用户量的背后:产品定位、技术架构、网络方案等

    1.前言 作为一个国民级手游,<王者荣耀>公测几年来的表现一直很强势.在耀眼的成绩背后,到底是什么样的技术支撑了这个用户量破2亿的游戏?王者上线前后在技术上有哪些变化.又是如何处理网络问题 ...

  3. 《王者荣耀》背后的数据秘密

    从找不到需求险些被叫停,到支撑亿级DAU的数据库行业标杆,这款支撑了<王者荣耀>多个系统的腾讯云数据库TcaplusDB在风雨中走过了整整10年.辉映日月破风浪,十年一剑破九天.百万行代码 ...

  4. python 安卓王者荣耀刷金币

    python王者荣耀金币脚本 用python模拟按键自动刷王者荣耀冒险模式的脚本 1.在电脑上使用手游模拟器,我用的腾讯手游助手 2.王者代码中截图部分以及路劲部分自己设定,截图一定要自己截,可能我们 ...

  5. 天天用MySQL开发,你知道数据库能抗多大并发压力吗?

    目录 一般业务系统运行流程图 一台4核8G的机器能抗多少并发量呢? 高并发来袭时数据库会先被打死吗? 8核16G的数据库每秒大概可以抗多少并发压力? 数据库架构可以从哪些方面优化? 总结 今天给大家分 ...

  6. 亿级用户体量,千万级日活用户,《王者荣耀》高并发背后的故事!

    堪称中国最火爆的手机游戏"王者荣耀",拥有亿级用户体量,千万级日活用户,如何快速.低成本地保障业务突发?本文从该问题出发,论述了问题对应的解决方案,并对其效果做出总结. 作者:黎斌 ...

  7. 王者荣耀高并发背后的故事

    本文转载自:王者荣耀高并发背后的故事 摘要 堪称中国最火爆的手机游戏"王者荣耀",拥有亿级用户体量,千万级日活用户,如何快速.低成本地保障业务突发?本文从该问题出发,论述了问题对应 ...

  8. 第四次:品牌推广角度分析《王者荣耀》手游

    这次学到了: ①从品牌推广的角度(用户角度.企业角度.社会角度,解决信 用问题,降低成本,提高价值),分析它 的品牌定位(信息不对称.缺乏信任.风险大的都需要品牌), 以及它在市场传播中体现出来的四个 ...

  9. 腾讯架构师的王者荣耀高并发故事

    2019独角兽企业重金招聘Python工程师标准>>> 摘要 堪称中国最火爆的手机游戏"王者荣耀",拥有亿级用户体量,千万级日活用户,如何快速.低成本地保障业务突 ...

最新文章

  1. python3中,os.path模块下常用的用法总结
  2. python 3 字典排序_Python学习教程实用技法:通过公共键对字典列表排序—itemgetter...
  3. 实验二Step1-有序顺序表
  4. ACM基础——OJ上的Java代码提交规范
  5. iOS WKWebView和JS交互的两种方式
  6. 兼容最好的设为首页加入收藏代码
  7. ## 2019-8-30 光滑粒子流体力学开源软件(Dual)sphysics使用中遇到的一些问题1
  8. android聊天软件开发,实战篇(1)
  9. network secruity studay day3
  10. python中求和符号怎么打_SymPy求和表达式中的代换符号
  11. 使用python生成文字视频
  12. 18938 汉诺塔问题
  13. 2019人工智能技术发展趋势
  14. cad和php哪个工资高,CAD顶级绘图员必备,人手一份的绘图命令,学会工资上万不是梦...
  15. SecurityException: Uid 0312 does not have permission content://com.android.providers...
  16. 【毕设教程】单片机RFID模块的使用 - 物联网 嵌入式 毕业设计 stm32
  17. 深入理解awgn函数如何向信号中添加高斯白噪声
  18. 【英文SEO】Google网站管理员工具是什么?
  19. checbox加datagrid实现批量删除
  20. 2021特种工(塔式起重机)模拟题集及答案解析

热门文章

  1. 五行与情志的之间的相生相克
  2. word中奇偶页不同的前提下,设置页码为何只有在偶数页显示?
  3. 闭门研讨:新形势下,房企发展如何破局?
  4. ART登场,Android要和核心虚拟机Dalvik说再见了
  5. Oppo面经:浏览器输入URL都发生了什么?
  6. Arduino+GM65(二维码模块)常见用法
  7. dns type65 https rr
  8. 操作系统引导的那点事
  9. odd在python_python odd
  10. 暴风云视频平台SDK使用介绍(五)-- 文件上传(进阶)