溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Redis主從復(fù)制流程概述

發(fā)布時間:2020-08-05 11:55:43 來源:ITPUB博客 閱讀:163 作者:chenfeng 欄目:關(guān)系型數(shù)據(jù)庫

Redis包含master和slave兩種節(jié)點:master節(jié)點對外提供讀寫服務(wù),slave節(jié)點作為master的數(shù)據(jù)備份,從主節(jié)點全量同步數(shù)據(jù),主從復(fù)制架構(gòu)下,默認Slave是只讀的,如果寫入則會報錯,但可以通過設(shè)置slave-read-only參數(shù)為no改為可寫。

主從復(fù)制是由slave主動觸發(fā),流程如下:

1.首先slave向master發(fā)起sync命令,發(fā)起后,master被動的將新進的slave節(jié)點加入到自己的主備復(fù)制集群。

2.master收到sync后,開啟bgsave操作。

3.bgsave完成后,master將快照信息發(fā)送給slave.

4.發(fā)送期間,master收到的來自用戶客戶單的新的寫命令,除了正常的響應(yīng)之外,都再存入一份到backlog隊列中。

5.快照信息發(fā)送完成后,master繼續(xù)發(fā)送backlog隊列信息。

6.backlog發(fā)送完成后,后續(xù)的寫操作同時發(fā)給slave來保持實時的異步復(fù)制。


slave端處理邏輯如下:

slave發(fā)送完sync后,繼續(xù)對外提供服務(wù)。

開始接收master的快照信息,同時,將slave現(xiàn)有數(shù)據(jù)清空,并將master快照寫入自身內(nèi)存。

接收backlog內(nèi)容并執(zhí)行,期間對外提供讀請求。

繼續(xù)接收后續(xù)來自master的命令副本并繼續(xù)回放,以保持數(shù)據(jù)和master一致。


向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI