1、数据库游戏行业最佳实践王若(百润)阿里云高级技术专家Alibaba Cloud Database in Gaming ServiceContents目录01游戏架构中数据库的应用和需求分析02游戏中Redis/Tair的技术水位03MongoDB的游戏最佳实践游戏架构中数据库的应用和需求分析GameServerGameServerGameServer接入层AdminServer 用户登陆态,历史记录 角色数据,商城 游戏region/server分服管理 版本控制,全局活动1.SNS,对战匹配2.排行榜,锁3.历史记录,选角,角色预览等数据库场景LogServer/BossCrossMsg/B
2、attle 工单缓存/分析加速 跨服数据 Mailbox Push服务缓存场景 行为日志,缓存Alibaba Cloud Database in gaming servers(分区分服)PolarDBAnalyticDBTairTairTairMongoDBLindorm 运营分析 Anti-cheat 报表 用户,账号 资金和交易Alibaba Cloud Database in gaming servers(全球同服)GameServer1NGameServer1N接入服GameServer1NCache SvrGameServer1NGameServer1N接入服GameServer1N
3、Cache SvrGameServer1NGameServer1N接入服GameServer1NCache Svr北京节点欧洲节点北美节点Auth svrBilling svrRanking svr全局服务Tair ClusterMongoDB ClusterAnalyticDB游戏行业对数据库的整体需求 扩缩容平滑:有很好的平顺性,和链接保持能力 抗压能力/热点等:注册/登录风暴,热门活动 多可用区容灾:从备份容灾走向跨域多活 从备份恢复,到能够支持任意时间点,任意key的恢复能力 支持数据内省,清洗等 产品搭配灵活,规格弹性好,安全 冷热归档和分层存储 不可忽视的运维成本 适应高速迭代;S
4、AAS服务化和可复用框架支持 半结构化数据:高效API和更多数据结构(ORM)高可靠性高可运维低成本快速开发多样化服务高效运维高速迭代可靠容灾游戏行业更青睐云数据库 Tair/MongoDB 原生JSON支持 Schema-Free 高动态扩展性 SAAS服务和可复用框架支持 云原生:高效备份/恢复 任意时间的数据恢复 清洗和导出:合服,滚服 平滑扩缩容(链接保持)高精度HA 跨域容灾和全球多活 多样化数据结构(modules)计算支持(with compute)数据库的自治和智能化游戏中Redis/Tair的技术水位Redis/Tair当前游戏能力技术水位大图Redis社区版容灾阿里云Red
5、is阿里云原生Tair扩缩容数据安全运维增强流计算存储介质module30s HA简单容灾7s HA多可用区7s HA多可用区/跨域多活停机闪断无感扩缩容全量备份恢复至上一次备份自动全量备份恢复至上一次备份自动全量+增量备份Key级任意时间点恢复大/热Key分析操作审计Event NotifyEvent NotifyEvent Notify即将上线无感知HASAAS多活Tair CDCDRAMDRAMDRAM/PMEM/ESSD半同步redisearchredisjsonTairJson/TairGisTairZsetTairSearch大/热Key分析+热Key加速操作审计热点散列JSON.
6、SET user1234.weapon excaliburJSON.APPEND user1234.aura might场景:Tair的全球多活在游戏中的使用 全球同服:-全球商城+背包系统-用户跨服对战(中/美漫游)-本地读写获取低时延服务体验-以JSON存储用户背包及角色数据(TairDoc)Tair双向多活-基于可靠的流式binlog导入导出协议-可靠的SLA保障(独立复制资源)-全球同服的高效cache server-全球多活的session系统场景:任意时间点数据恢复(PITR)RecoverMonday:00:00:00 set key1 2500:00:01 zadd k2 1