binlog高可用

来源:17-7 【服务拆分】实现 ad-binlog-kafka 模块

目科将

2019-07-01

老师,我有两个问题想咨询下:

  1. 用于监测binlog的工程真实环境是单实例么
    • 1.1 如果是单实例,实例挂了或重启是不是会导致业务中断,如何在重启之后再连续监听(只有在启动时设置了binlogfile和position)
    • 1.2 如果不是单实例,真实环境会是怎么样的
  2. 在监听biglog工程中,如果在将增量的消息放到mq中失败了,那么这条消息变更不是就丢了么(我理解是不是在每次应该记录每次的position,并保存在一个持久化的地方),想了解真实环境是怎么做的
写回答

1回答

张勤一

2019-07-02

同学你好:

    1. 监听 Binlog 的不能是单实例,但是,在同一时刻应该是只有一个实例在监听,否则,会造成消息的重复。所以,多个实例之间需要有协调性关系。且,需要有个时间间隔定时将 Binlog 的 binlog-file 和 position 保存下来(redis 中或者文件中都可以);

    2. 将消息放入到 Kafka 中,如果失败了,直接重试就好了。


    欢迎来 QQ 群随时交流、讨论,也非常感谢同学的支持!

1
2
qq_呓语_1
请问下如何维持这个协调性, 多个实例,互相做心跳检测吗,检测到1个挂了启用下1个?
2019-07-18
共2条回复

Spring Cloud微服务架构 设计实现广告系统

广告营销系统,未来大中型企业的标配

2136 学习 · 927 问题

查看课程

相似问题