日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

开源基于Canal的开源增量数据订阅消费中间件

發布時間:2023/12/4 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 开源基于Canal的开源增量数据订阅消费中间件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

canal 是阿里巴巴開源的一款基于數據庫增量日志解析,提供增量數據訂閱&消費,目前主要支持了MySQL(也支持mariaDB)。

我開發的這個CanalSync項目?https://github.com/yuzd/CanalSync? ?==>覺得不錯幫忙給個star謝謝

是基于canal-server之上的數據庫同步&消費中間件,

用于可快速搭建消費canal-server的項目。 目前我已實現并開源了如下:

  • 數據消費傳輸到redis組件

  • 數據消費傳輸到rabbitmq組件

  • 數據消費傳輸到mysql數據庫組件

  • Nuget:

    1. 接收canal-server的消息中間件:

    Install-Package Canal.Server

    2. 解析canal-server消息轉出可執行sql的中間件:

    Install-Package Canal.SqlParse

    如何使用

    如果你需要寫一個數據消費傳輸到XXXMQ,用不到反解析成sql的話,只需要引用 Canal.Server中間件。 如果你需要寫一個數據消費傳輸到XXXdb,得用到反解析sql中間件,需要同時引用Canal.Server 和 Canal.SqlParse 這2個中間件。

    Canal.Server 如何使用

  • 引用 Canal.Server 并appsettings.json 配置canal-server的參數.如下圖:

  • 參數說明:?

  • 創建一個 消費類 必須要 實現: INotificationHandler 接口,例如叫TestHandler

  • 在startUp 使用并注冊 該消費類


  • services.AddCanalService(produce => produce.RegisterSingleton<TestHandler>());

    Canal.SqlParse 如何使用

    目前只實現了解析mysql的邏輯,未來會加入sqlserver的解析邏輯!!

    services.AddMysqlParseService(connectionString);

    在類的構造方法可注入:

    如上圖,代表將canal-server的數據直接在另外的mysql庫里面執行,等于2個mysql數據進行互相同步。

    歐洲與中國的2個mysql庫 使用上述方法進行同步的測試

    結果: 同步速度在100~200qps?

    原文地址:https://www.cnblogs.com/yudongdong/p/11032062.html

    .NET社區新聞,深度好文,歡迎訪問公眾號文章匯總?http://www.csharpkit.com?

    總結

    以上是生活随笔為你收集整理的开源基于Canal的开源增量数据订阅消费中间件的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。