您现在的位置是:首页 >技术杂谈 >【Maxwell】MySQL数据监听网站首页技术杂谈

【Maxwell】MySQL数据监听

暮色里de白雪檐 2023-07-21 00:00:03
简介【Maxwell】MySQL数据监听

背景

我们都知道随着业务的发展,监听数据库的数据变更及时性是必须的,虽然我们可以在入库之前进行处理,但是有个问题就是事务的一致性不好掌控,而且很多业务都是微服务的,那么不在一个微服务中,可能有需要跨服务去调用,那么此时直接去监听mysql的binlog来实现数据的操作既可以实现及时性又可以和业务解耦
目前市面上比较流行的就是cancel和maxwell,那么我们该如何去选型呢?这里我说下我的选型历程

大数据组件之Maxwell与Canal工具对比

在这里插入图片描述

  • Canal是阿里公司使用Java开发,Maxwell是zendesk公司使用Java开发。
  • Canal支持高可用HA,支持断点续传。Maxwell不支持HA,但是支持断点续传,要想支持HA需要自己实现。
  • Canal由于有Client消费数据,针对binlog数据可以使用Client自定义数据格式, - - Maxwell支持Json数据写出到Kafka或Redis。
  • Canal只能获取MySQL最新数据,Maxwell支持Bootstrap,可以支持获取MySQL中历史数据。
  • Canal采用Server+client模式,Maxwell没有采用这种模式,直接将数据发送到Kafka或者Redis等。
    总体来看,Maxwell相对于Canal更加轻量级

格式的区别

<

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。