天天看點

redis主從[master、slave]

[size=large]

主從複制:讓多個slave server擁有和master server相同的資料庫副本。

特點

1.master可以有多個slave

2.除了多個slave連到相同的master外,slave也可以連接配接其他slave形成圖狀結構

3.主從複制不會阻塞master。也就是說當一個或多個slave與master進行初次同步資料時,master可以繼續處理client發來的請求。

相反slave在初次同步資料時則會阻塞不能處理client的請求。

4.主從複制可以用來提高系統的可伸縮性,我們可以用多個slave 專門用于client的讀請求,

如sort操作可以使用slave來處理。也可以用來做簡單的資料備援

5.可以在master禁用資料持久化,隻需要注釋掉master 配置檔案中的所有save配置,然後隻在slave上配置資料持久化

主從複制的過程

當設定好slave伺服器後,slave會建立和master的連接配接,然後發送sync指令。

無論是第一次同步建立的連接配接還是連接配接斷開後的重新連 接,master都會啟動一個背景程序,将資料庫快照儲存到檔案中,

同時master主程序會開始收集新的寫指令并緩存起來。背景程序完成寫檔案 後,master就發送檔案給slave,slave将檔案儲存到磁盤上,

然後加載到記憶體恢複資料庫快照到slave上。接着master就會把緩存的命 令轉發給slave。

而且後續master收到的寫指令都會通過開始建立的連接配接發送給slave。

從master到slave的同步資料的指令和從 client發送的指令使用相同的協定格式。當master和slave的連接配接斷開時slave可以自動重建立立連接配接。

如果master同時收到多個 slave發來的同步連接配接指令,隻會使用啟動一個程序來寫資料庫鏡像,然後發送給所有slave。

配置slave伺服器很簡單,隻需要在配置檔案中加入如下配置

slaveof 192.168.1.1 6379 #指定master的ip和端口

[/size]

繼續閱讀