kingbus:基于 Raft 的分布式 MySQL binlog 存储系统

栏目: 数据库 · Mysql · 发布时间: 5年前

内容简介:kingbus是一个基于raft强一致协议实现的分布式MySQL binlog 存储系统。它能够充当一个MySQL Slave从真正的Master上同步binglog,并存储在分布式集群中;同时又充当一个MySQL Master将集群中的binlog 同步给其他Slave。kingbus具有如下特性:

kingbus:基于 Raft 的分布式 MySQL binlog 存储系统

kingbus简介

kingbus是一个基于raft强一致协议实现的分布式MySQL binlog 存储系统。它能够充当一个MySQL Slave从真正的Master上同步binglog,并存储在分布式集群中;同时又充当一个MySQL Master将集群中的binlog 同步给其他Slave。kingbus具有如下特性:

  • 兼容 MySQL 复制协议, 通过Gtid方式同步 Master上的binlog,同时支持slave通过Gtid方式从kingbus拉取binlog。

  • 跨地域数据复制,kingbus通过raft协议支持跨地域间的数据复制。写入到集群的binlog数据在多个节点间保证强一致,并保证binlog顺序与master上完全一致。

  • 高可用,由于kingbus是构建在Raft强一致协议之上,能够实现集群中过半数节点存活的情况下,整个binlog拉取和推送服务高可用。

kingbus:基于 Raft 的分布式 MySQL binlog 存储系统

为什么需要kingbus?

  1. 降低Master的负载和网络传输流量。在一主多从的复制拓扑中,Master需要发送binlog到各个slave,如果slave过多的话,网络流量很有可能达到Master的网卡上限,同时Master上负载也会过高。
  2. 简化主从复制拓扑,不再需要多级复制。
  3. 简化Master Failover流程,只需将其中的一个Slave提升为Master,并将kingbus指向新的Master,其他slave复制拓扑保持不变。
  4. 减少Master上的binlog存储空间,将binlog都存储到kingbus中。
  5. 支持异构复制。其他异构复制组件可以连接在kingbus上。

更多使用场景,可以参考:

Quick Start

Read the Quick Start

License

kingbus采用Apache 2.0协议,相关协议请参看 目录

文档

1. Kingbus 管理API说明

2. 通过docker-compose创建kingbus集群

反馈

  • 如果您在使用kingbus的过程中发现BUG或者有新的功能需求,请提issue。
  • 如果想跟作者沟通交流,请发邮件至hiflike#126.com与作者取得联系,或者加入QQ群(232606162)交流。
  • 欢迎关注 后端技术快讯 公众号,有关kingbus的最新消息与后端架构设计类的文章,都会在这个公众号分享。

kingbus:基于 Raft 的分布式 MySQL binlog 存储系统

致谢

  • 感谢 etcd 提供的raft library。
  • 感谢 go-mysql 提供的相关MySQL协议解析库。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Perl语言入门 第六版(中文版)

Perl语言入门 第六版(中文版)

Randal L.Schwartz、brian d foy、Tom Phoenix / 盛春 / 东南大学出版社 / 2012-3 / 62.00元

《Perl语言入门(第6版)(中文版)》根据作者施瓦茨、福瓦、菲尼克斯从1991年开始的教学经验积累汇聚而成,多年来十分畅销。此次第六版涵盖了最新的Perl5.14版本的变化。《Perl语言入门(第6版)(中文版)》每章都包含若干习题,帮助你巩固消化刚学到的知识。也许其他书籍只是想着灌输Perl编程的条条框框,但《Perl语言入门(第6版)(中文版)》不同,我们希望把你培养成一名真正的Perl程序......一起来看看 《Perl语言入门 第六版(中文版)》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试