mysql+canal+kafka+elasticsearch構建訂單搜索平臺(kafka接收binlog變更)

上面幾篇文章講了基礎搭建過程:

canal搭建:http://www.lxweimin.com/p/917795a7acc1

zookeeper 搭建:http://www.lxweimin.com/p/d3c1727ba1c4

kafka搭建:http://www.lxweimin.com/p/c6916c4e4cae

下面我們來看如何串聯整體流程。

1.首先進行canal配置。改動配置文件canal.properties。改動如下:

serverMode改為kafka

消息隊列配置:

監聽地址改為本機地址

2.具體實例改動:

instance.propties改動:

topic配置說明:


在這里我們是topic:scheme.table配置。

kafka分片配置是根據表的主鍵進行配置:

3.在這里有個關鍵步驟,需要開啟消息隊列的自動創建topic模式。否則會報錯

相關配置在kafka的server.properties

添加如下配置:


4.相關改動完成后重啟canal和kafka

5.如何測試kafka接收binlog消息:

下載canal項目:git clone?https://github.com/alibaba/canal.git

運行如下代碼:

項目代碼:

canal/example/src/main/java/com/alibaba/otter/canal/example/kafka/CanalKafkaClientExample.java

改動對應配置為測試環境配置:


運行CanalKafkaClientExample的main方法。然后改動數據庫數據。查看效果,目前已經成功接收數據

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容