异地多活的单元化设计

  • 基于mysql的原生复制,做主主架构,两边都开启写入。
  • 基于PXC galera类似的数据库集群方案
  • 基于otter+canal、Apache Pulsar的开源数据同步方案
  • 自研数据复制方案

前两种合适在机房内的数据库复制,不合适地域级跨机房复制,而阿里开源的otter+canal方案是创业企业较常用的跨机房复制方案。 如果将单元化一系列难点作排名,数据库复制是排前3的,因为多活解决的最大难点就是数据复制带来的延迟。目前数据库复制的中间件很多,比如阿里otter+canal方案、Apache Pulsar等。一般的公司如果强调业务的快速迭代,支持用开源的中间件方案实施,当然,熟练使用中间件的成本和代价也很高。如果有研发能力,可以考虑自研实现。数据同步这里,总体上需要基于mysql等存储的私有协议,基于协议读取bin_log数据,然后再使用队列传输到另一个数据中心恢复数据。具体的复制细节方案我们在另外的文章里再作分享。
四、单元化调度规则 具有各个单元化系统后,就需要有一个支持全部单元的调度系统,调度所有单元系统。比如业务流量在单元之间怎样分配,单元之间是否能跨越访问业务,这些规则都需要一个全局性的调度中心实现并且能及时实时控制所有单元节点的运行。运营人员就在这个调度中心设置各种单元规则并实时性下发到各个子单元。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年4月13日
下一篇 2018年4月13日

相关推荐