网站改版方案流程,交互做的不好的网站,自己做的网站怎么才能在百度上查找,单位网站建设内容最近在做redis和MySQL的缓存一致性#xff0c;一个方式是订阅MySQL的BinLog文件#xff0c;我们使用阿里巴巴的Canal的中间件来做。
Canal是服务端和客户端两部分构成#xff0c;我们需要先启动Canal的服务端#xff0c;然后在Go程序里面连接Canal服务端#xff0c;即可监…最近在做redis和MySQL的缓存一致性一个方式是订阅MySQL的BinLog文件我们使用阿里巴巴的Canal的中间件来做。
Canal是服务端和客户端两部分构成我们需要先启动Canal的服务端然后在Go程序里面连接Canal服务端即可监听到MySQL的数据变化。
启动Canal服务
QuickStart · alibaba/canal Wiki (github.com)
步骤都很简单我们重点看一下/tmp/canal/conf/example/instance.properties里面配置文件 Canal之所以能订阅MySQL的binlog是把自己伪装成了一个MySQL从机主机会不停的给MySQL的从机传输binlog文件。 等于启动Canal服务的过程包含了主从复制的配置过程主从服务的过程是告诉从机主机的账号密码 补充
基于docker启动的canal服务按照官方文档操作出现了问题所以使用了普通的启动方式
Go连接Canal服务端 Canal支持Go连接withlin/canal-go: Alibaba mysql database binlog incremental subscription consumer components Canals golang client[阿里巴巴mysql数据库binlog的增量订阅消费组件 Canal 的 go 客户端 ] https://github.com/alibaba/canalhttps://github.com/withlin/canal-go 官方文档上面没有任何说明我们需要自己翻一下代码 把代码拷贝下来即可 关于上面配置信息具体可以参考Go操作阿里开源的框架Canal用于MySQL实时binlog同步 - 简书 (jianshu.com)
还有最最重要的一步开启阿里云服务器安全组11111端口 监听数据变化