前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >国内某大型支付系统MySQL架构

国内某大型支付系统MySQL架构

作者头像
wubx
发布2019-04-24 18:50:45
8510
发布2019-04-24 18:50:45
举报
文章被收录于专栏:MySQLBeginnerMySQLBeginner

导读

这一切可能是假的。 内容来自于一个技术大会的猜想,作者不愿意公开分享PPT,所以也没有原版PPT可以供大家核对。这里我也是根据自已听的,重现一下。

整体来讲,这个结构是符合金融级架构,如果你也在做金融级的MySQL方案,或是涉及到多DC的处理,也可以参考一下。

一、 架构

直接上图:

结构说明:

1、数据库对外提供服务,是基于Zookeeper对外提供服务;

2、利用分布式监控(类似于Redis的哨兵结构监控)做MySQL的Master故障切换,从库故障下线,恢复后自动上线。

两个M之间使用增强半同步复制;其它从库使用异步复制;

假设M1故障,把写切换到M2上,M1降级为故障的从库,等待修复后自动上线为从库,如下:

基本上所有的压力主要打在主库上;

从库提供一些不重要的读的工作, 其它IDC里的从库用于一些就近的读取工作。

二、 一些细节

在该结构中,现在各大公司这种类似的结构比较多,在切换中很多公司是借助于MHA实现, 在使用GTID的环境中,这类结构切换非常容易。

复制本身因为硬件故障,或是异常重启可能会造成Binlog传输丢失,还有一些场景属于MySQL自身的Bug问题可能会造成数据的不一致。 复制不是绝对的数据一致,包括增强半同步,这里有一些场景会造成Binlog顺序乱掉,也会出错。所以金融环境中有一个数据校验机制,而且尽量单一存储引擎,不要混合使用。

数据校验上,可以使用pt-table-checksum,也可以考虑基于业务的,精确的每个小时的校验。

三、结论

可以说这个结构在互联网中已经存在6年多,作者分享时也说到,现在已经是MySQL处理的一个变革的年代,技术必须要转变。 作者也在探究使用MySQL的 MGR 来替代现有的方案,同时也感觉MySQL的MGR也是技术转变的一个未来方向。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-10-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 MySQLBeginner 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、 架构
  • 三、结论
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档