<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          canalBinlog 的增量訂閱和消費組件

          聯(lián)合創(chuàng)作 · 2023-09-30 22:34

          canal 是阿里巴巴 MySQL 數(shù)據庫 Binlog 的增量訂閱&消費組件。

          名稱:canal [k?'n&aelig;l]
          譯意: 水道/管道/溝渠
          語言: 純java開發(fā)
          定位: 基于數(shù)據庫增量日志解析,提供增量數(shù)據訂閱&消費,目前主要支持了MySQL

          早期,阿里巴巴 B2B 公司因為存在杭州和美國雙機房部署,存在跨機房同步的業(yè)務需求。不過早期的數(shù)據庫同步業(yè)務,主要是基于 trigger 的方式獲取增量 變更,不過從 2010 年開始,阿里系公司開始逐步的嘗試基于數(shù)據庫的日志解析,獲取增量變更進行同步,由此衍生出了增量訂閱&消費的業(yè)務,從此開 啟了一段新紀元。ps. 目前內部使用的同步,已經支持 MySQL 5.x 和 Oracle 部分版本的日志解析

           

          基于日志增量訂閱&消費支持的業(yè)務:

          1. 數(shù)據庫鏡像

          2. 數(shù)據庫實時備份

          3. 多級索引 (賣家和買家各自分庫索引)

          4. search build

          5. 業(yè)務cache刷新

          6. 價格變化等重要業(yè)務消息

          Canal 工作原理:

          原理相對比較簡單:

          1. canal模擬mysql slave的交互協(xié)議,偽裝自己為mysql slave,向mysql master發(fā)送dump協(xié)議

          2. mysql master收到dump請求,開始推送binary log給slave(也就是canal)

          3. canal解析binary log對象(原始為byte流)

          瀏覽 22
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  久热这里只有精品89 | 这里只有精品视频在线 | 国产三及 | 在线三级片网站 | 2018天天日天天射 |