redis與mysql怎麼保證資料一致 redis與mysql保證資料一致步驟

來源:時尚少女範 1.65W
redis與mysql怎麼保證資料一致 redis與mysql保證資料一致步驟

1、技術整體思路。

MySQL binlog增量訂閱消費+訊息佇列+增量資料更新到redis

1)讀Redis:熱資料基本都在Redis

2)寫MySQL:增刪改都是操作MySQL

3)更新Redis資料:MySQ的資料操作binlog,來更新到Redis

2、Redis更新。

1)資料操作主要分為兩大塊:

一個是全量(將全部資料一次寫入到redis)

一個是增量(實時更新)

這裡說的是增量,指的是mysql的update、insert、delate變更資料。

2)讀取binlog後分析 ,利用訊息佇列,推送更新各臺的redis快取資料。

這樣一旦MySQL中產生了新的寫入、更新、刪除等操作,就可以把binlog相關的訊息推送至Redis,Redis再根據binlog中的記錄,對Redis進行更新。

其實這種機制,很類似MySQL的主從備份機制,因為MySQL的主備也是通過binlog來實現的資料一致性。

這裡可以結合使用canal(阿里的一款開源框架),通過該框架可以對MySQL的binlog進行訂閱,而canal正是模仿了mysql的slave資料庫的備份請求,使得Redis的資料更新達到了相同的效果。

熱門標籤