![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Canal技术
文章平均质量分 93
cxy_19891109
这个作者很懒,什么都没留下…
展开
-
4、Canal的 instance模块
一、总体结构如确所述,Canal server的模式有两种:manager和spring在core模块中,定义了CanalInstance接口,以及其抽象类子类AbstractCanalInstance。在spring模块,提供了基于spring配置方式的CanalInstanceWithSpring实现,即CanalInstance实例的创建,通过spring配置文件来创建。在manager模块中,提供了基于manager配置方式的CanalInstanceWithManager实现,即Cana原创 2020-11-03 16:27:20 · 1380 阅读 · 0 评论 -
3、Canal的server模块
一、模块结构server模块的核心接口是CanalServer,其有2个实现类CanalServerWithNetty、CanalServerWithEmbeded。关于CanalServer,官方文档中有有以下描述:网上解读:左边的图表示的是Canal独立部署。不同的应用通过canal client与canal server进行通信,所有的canal client的请求统一由CanalServerWithNetty接受,之后CanalServerWithNetty会将客户端请求派给Canal原创 2020-10-20 18:38:15 · 1455 阅读 · 0 评论 -
2、Canal的deployer模块
一、整体模块构成canal有两种使用方式:1、独立部署 2、内嵌到应用中。 deployer模块主要用于独立部署canal server。关于这两种方式的区别,请参见server模块源码分析。deployer模块源码目录结构如下所示,包括启动和停止脚本,服务的相关配置文件等。deployer模块主要完成以下功能:1、读取canal,properties配置文件2、启动canal server,监听canal client的请求3、启动canal instance,连接mysql数据库,伪装成s原创 2020-10-20 16:27:54 · 2157 阅读 · 0 评论 -
Canal简介
一、简介canal是阿里巴巴开源的mysql数据库binlog的增量订阅&消费组件。项目github地址为:https://github.com/alibaba/canal。主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费早期阿里巴巴因为杭州和美国双机房部署,存在跨机房同步的业务需求,实现方式主要是基于业务 trigger 获取增量变更。从 2010 年开始,业务逐步尝试数据库日志解析获取增量变更进行同步,由此衍生出了大量的数据库增量订阅和消费业务。基于日志增量订阅和消原创 2020-10-20 14:31:36 · 616 阅读 · 1 评论