【PolarDB·专家篇】多主架构集群版

「已注销」 2022-03-18 22:41:14

本文将详细介绍多主架构集群版的相关信息。

随着PolarDB MySQL引擎客户的不断增加,大规模头部客户不断涌入,部分头部客户业务体量规模庞大,使得目前PolarDB MySQL引擎的单写(一写多读)架构在特定场景下,写性能出现瓶颈。

PolarDB MySQL引擎全新推出多主架构,实现从一写多读架构到多写多读架构的升级,主要面向多租户、游戏、电商等高并发读写的应用场景。

多主架构的架构图如下:多主架构

集群中所有的数据文件都存放在共享存储(PolarStore)中,各个RW节点通过分布式文件系统(PolarFileSystem)共享底层存储(PolarStore)中的数据文件。用户可以通过集群地址访问整个集群,数据库代理会自动转发SQL命令到正确的RW节点。

核心优势和能力

  • 支持不同数据库在不同计算节点并发写入。
  • 集群版支持1个写节点和最多15个只读节点,多主架构集群版最多可支持32个节点同时写入。
  • 支持数据库跨节点动态调度,秒级完成切换,极大提升集群整体并发读写能力。

适用场景

多主架构主要面向SaaS多租户、游戏、电商等高并发读写的应用场景。

  • SaaS多租户场景:满足高并发性能需求,实现租户间负载均衡

    场景特点:租户的数据库数量变化较快,负载变化较大,需要经常在不同的实例之间调配数据库资源,以便达到最佳用户体验。

    解决方案:多主架构可帮助客户快速将租户的数据库在不同RW节点间进行切换,从而实现负载均衡。

  • 分服游戏场景:更好的性能和扩展能力,支持世界服架构

    场景特点:在游戏成长期,数据库负载较大,且呈现为不断增长的趋势特点。通常表现为在游戏成长期期间,会不断增加数据库,导致RW节点负荷也不断增加。而在游戏衰退期,数据库负载逐渐减少,数据库会不断合并,导致RW节点的负荷也呈减少趋势。

    解决方案:游戏成长期,可快速将部分数据库切换到新的RW节点,实现负载均衡;游戏衰退期,可快速将数据库聚合到少量RW节点,快速降低运作成本。

性能提升情况

经测试,随着集群中的数据库切换至更多的主节点(RW)上,集群整体并发读写能力几乎呈线性提升。测试示例如下:

  • 测试背景:集群包含8个数据库,8个RW节点。
  • 测试过程:初始情况下,8个数据库全部负载在其中一个RW节点上,然后对所有数据库同步执行相同的压力测试。压测期间,将8个数据库分别平均切换到2个RW节点、4个RW节点、8个RW节点上,观察集群整体的性能变化趋势。

·····

更多内容可见:https://help.aliyun.com/document_detail/396324.html 

...全文
746 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

52

社区成员

发帖
与我相关
我的任务
社区描述
PolarDB开发者
其他 企业社区
社区管理员
  • csdnsqst0017
  • kikokingzz
  • karina17
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

社区初立,为了鼓励小友们在社区中积极互动,现在有一个活动如下:

试试用AI创作助手写篇文章吧