天天看點

基于canalx二次開發資料同步平台最佳實踐

一、平台系統介紹

1.平台系統分為兩部分:平台web管理端、CanalX資料同步端,能夠攜帶業務系統産生的binlog資料精準、實時、可靠的送達到目的連接配接器Connector(Kafka、RocketMQ),并且配備相關的性能監控、健康檢查和告警機制,滿足“運維效率快”、“同步性能快”,“故障恢複快”3個具備“生産力”的特性。

2.CanalX是在CanalV1.1.5版本基礎上進行定制化開發并對其性能進行一些優化,旨在滿足多種業務場景的資料同步需求。

3.此次架構更新優化Canal,主要是為了解決之前Canal Client和Canal Server模式拉取binlog,在面對很多跑批任務,瞬時産生千萬甚至億級binlog,經過transform邏輯轉換後發送kafka或者rocketmq,整個同步系統性能延遲較高,對業務系統實時性要求比較高的業務場景都是不可接受的

4.CanalX将之前V1.0版本資料同步架構中的Canal Client合并到Canal Server中,同時提供CanalX可視化運維管理操作和完善的監控告警機制,提升了整體資料同步的效率,降低了運維成本

神舟平台滿足3個具備“生産力”的特性:

基于canalx二次開發資料同步平台最佳實踐

二、平台整體系統架構設計

基于canalx二次開發資料同步平台最佳實踐

三、平台概念模型

1.叢集單元

用于管理CanalX Server機器,基于單元化架構設計思想和理念,每個叢集單元可以獨立管理和擴縮容

2.CanalX節點

用于執行同步binlog任務的機器,一個CanalX 節點可以運作多個資料庫同步任務

3.同步任務

代表binlog資料同步任務

4.同步位點

記錄同步任務運作的CanalX節點和同步資料庫binlog位置資訊,包括binlog檔案、位置position、gtid等資訊

四、平台各元件高可用架構設計

基于canalx二次開發資料同步平台最佳實踐

繼續閱讀