Canal+MQ数据同步流程

36 阅读1分钟

Canal 通过模拟 MySQL 从库的交互协议与主库建立连接,实时获取主库产生的binlog二进制日志,然后对 binlog 进行解析,提取出其中包含的数据新增、更新、删除等具体操作信息,包括表名、字段变更前后的值、操作类型等,并将这些信息转换为JSON格式,之后按照预设规则将解析后的变更数据发送到MQ消息队列的指定队列中,下游的各类业务系统(如缓存服务、搜索引擎、数据仓库等)通过订阅 MQ 中对应的消息通道,获取这些变更数据并根据自身业务逻辑进行处理,最终实现与 MySQL 主库的数据同步。