游戏云存储架构变迁之路讲述.pptx

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
游戏云存储架构变迁之路讲述

游戏云存储的架构变迁之路 目录 ??单实例时代 ?? 游戏DB分布介绍 ?? 自动化提供海量DB服务 ??多实例时代 ?? 高可用/灵活调度 ?? MySQL源码定制 ??分布式时代 ?? TSpider动态调度 (在线扩容及缩容) ? 单实例时代,游戏DB分布及架构 ??典型游戏DB分布介绍 ?? 大型多人在线游戏(MMOG): ? ?三国/地下城与勇士 ?? 高级休闲游戏(ACG): ?QQ飞车/英雄联盟 ?? 平台休闲游戏(PLAT):玫瑰小镇/QQ游戏大厅 ??游戏DB架构简化 ?? 核心数据 热备 ?? 日志数据 单实例 MMOG游戏DB分布 ?? 部署策略:就近接入 ?? 切分策略:SET化 ?? 承载策略:Scale ?Up cluster world world zone server zone server zone server zone server zone server zone server dir server dir server dir server log server log server cs server 初级游戏服务器组 ACG游戏DB分布 ?? 部署策略:就近接入 ?? 切分策略:水平 + ?垂直 ?? 承载策略:Scale ?Out 目录服务器 客户端 客户端 客户端 DB服务器 DB服务器 DB服务器 日志服务器 日志服务器 LogProxy 商店服务器 新手游戏服务器组 公用网络 分IDC LogProxy Proxy服务器 边境服务器休闲服务器 新手游戏服务器组 初级游戏服务器组 Name服务器 国家服务器 PLAT游戏DB分布 ?? 部署策略:集中部署,跨IDC容灾 ?? 切分策略:水平 ?? 承载策略:Scale ?Out 游戏DB架构简化 ??核心数据 增加热备 ??日志数据 单实例 单实例时代,自动化提供海量DB服务 ?? 效率为王,工具平台解放DBA双手 250+款游戏(端游+手游)、10000+台服务器、20000+个实例 690次SQL变更/月,人均每天支撑3个业务SQL变更,人均管理着500台机器、1000个实例 ?? DB服务举例 单实例DB管理的痛点 ?? 硬件故障影响用户时间长 ? ?? DB无法实现调度,DB ?Scale耗费停机时间长 ? ?? DB加字段耗时长,无透明DB压缩方案 ? 多实例时代,高可用/灵活调度 ?? 游戏云存储架构1.0 Auto ?Switch组件 ?? MySQL--‐PrOxy扩展(基于0.8.2) ?? 去掉lua扩展,提升性能 ?? 扩展ADMIN接口 ? ?? refresh_backends\refresh_users\refresh_cOnnlOg ? ?? shOW ?prOcesslist\shOW ?balances ? ?? 监控 ?? 多点监控,IDC内/IDC外 ?? 进程探测、SSH探测及TOuch文件 ?? DOuble ?Check ? ?? 切换前检查 ? ?? 数据一致性检查 ?? Slave状态检查 ?? Time ?Delay ? 故障切换数据?一致性保证 ?? 数据自动校验pt--‐table--‐checksum例行化 ? ?? 数据块切分不均在可重复度隔离级别下的“锁数据”问题 ? ?? 源码改造两个核心函数的代码片段 –? _chunk_char_exact,引入辅助变量@i qq# select `$args{chunk_col}` from $args{db}.$args{tbl} where (\@i :=\@i +1) 0 and (\@i % $chunk_rows) = 1 order by `$args{chunk_col}` asc # –? recursive_dynamic_calculate_chunks,二分递归切分 ? EXPLAIN SELECT * FROM $db_tbl where $col = . $q-quote_val($from_pos) . AND $col . $q- quote_val($end_pos) 增 据: --‐--‐ 1个区间包含5行 按数据分块的原理,5000M的表,chunk--‐size=10M时,只有两个区间包含 数 加参数: 第 chunk--‐size--‐excat=yes|no ?数据(id=0 ?and ?id ? ?20),第500个区间包含1行数 据(id

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档