canal-spring-boot-starter
组件简介
基于 Apache Curator 整合的 Starter
使用Canal来监听MySQL的binlog变化可以实现这个需求,可是在监听到变化后需要马上保存变更记录,除非再做一些逻辑处理,于是我又结合了RabbitMQ来处理保存变更记录的操作。
步骤
启动MySQL环境,并开启binlog
启动Canal环境,为其创建一个MySQL账号,然后以Slave的形式连接MySQL
Canal服务模式设为TCP,用Java编写客户端代码,监听MySQL的binlog修改
Canal服务模式设为RabbitMQ,启动RabbitMQ环境,配置Canal和RabbitMQ的连接,用消息队列去接收binlog修改事件
使用说明
1、Spring Boot 项目添加 Maven 依赖
<dependency>
<groupId>com.github.hiwepy</groupId>
<artifactId>curator-spring-boot-starter</artifactId>
<version>${project.version}</version>
</dependency>
2、在application.yml
文件中增加如下配置
#################################################################################################
### Apache Curator 配置:
#################################################################################################
curator:
connect-string: 192.168.1.1:2100,192.168.1.1:2101,192.168.1.:2102
connection-timeout-ms: 3000
session-timeout-ms: 30000
max-close-wait-ms: 2000
with-ensemble-tracker: true
3、使用示例
import javax.annotation.PostConstruct;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class CuratorApplication_Test {
@Autowired
private CuratorZookeeperTemplate template;
@PostConstruct
public void testText() {
}
@PostConstruct
public void testImage() {
}
public static void main(String[] args) throws Exception {
SpringApplication.run(CuratorApplication_Test.class, args);
}
}
Jeebiz 技术社区
Jeebiz 技术社区 微信公共号、小程序,欢迎关注反馈意见和一起交流,关注公众号回复「Jeebiz」拉你入群。
公共号 | 小程序 |
---|---|
作者:Jeebiz 创建时间:2023-03-20 23:43
最后编辑:Jeebiz 更新时间:2024-10-05 00:01
最后编辑:Jeebiz 更新时间:2024-10-05 00:01