和MySQL主從復(fù)制的原因一樣,Redis雖然讀取寫入的速度都特別快,但是也會(huì)產(chǎn)生讀壓力特別大的情況。為了分擔(dān)讀壓力,Redis支持主從復(fù)制,Redis的主從結(jié)構(gòu)可以采用一主多從或者級(jí)聯(lián)結(jié)構(gòu),Redis主從復(fù)制可以根據(jù)是否是全量分為全量同步和增量同步。下圖為級(jí)聯(lián)結(jié)構(gòu)。
Redis全量復(fù)制一般發(fā)生在Slave初始化階段,這時(shí)Slave需要將Master上的所有數(shù)據(jù)都復(fù)制一份。具體步驟如下:
1)從服務(wù)器連接主服務(wù)器,發(fā)送SYNC命令;
2)主服務(wù)器接收到SYNC命名后,開始執(zhí)行BGSAVE命令生成RDB文件并使用緩沖區(qū)記錄此后執(zhí)行的所有寫命令;
3)主服務(wù)器BGSAVE執(zhí)行完后,向所有從服務(wù)器發(fā)送快照文件,并在發(fā)送期間繼續(xù)記錄被執(zhí)行的寫命令;
4)從服務(wù)器收到快照文件后丟棄所有舊數(shù)據(jù),載入收到的快照;
5)主服務(wù)器快照發(fā)送完畢后開始向從服務(wù)器發(fā)送緩沖區(qū)中的寫命令;
6)從服務(wù)器完成對(duì)快照的載入,開始接收命令請(qǐng)求,并執(zhí)行來(lái)自主服務(wù)器緩沖區(qū)的寫命令;
完成上面幾個(gè)步驟后就完成了從服務(wù)器數(shù)據(jù)初始化的所有操作,從服務(wù)器此時(shí)可以接收來(lái)自用戶的讀請(qǐng)求。
Redis增量復(fù)制是指Slave初始化后開始正常工作時(shí)主服務(wù)器發(fā)生的寫操作同步到從服務(wù)器的過(guò)程。
增量復(fù)制的過(guò)程主要是主服務(wù)器每執(zhí)行一個(gè)寫命令就會(huì)向從服務(wù)器發(fā)送相同的寫命令,從服務(wù)器接收并執(zhí)行收到的寫命令。
主從剛剛連接的時(shí)候,進(jìn)行全量同步;全同步結(jié)束后,進(jìn)行增量同步。當(dāng)然,如果有需要,slave 在任何時(shí)候都可以發(fā)起全量同步。redis 策略是,無(wú)論如何,首先會(huì)嘗試進(jìn)行增量同步,如不成功,要求從機(jī)進(jìn)行全量同步。
如果多個(gè)Slave斷線了,需要重啟的時(shí)候,因?yàn)橹灰猄lave啟動(dòng),就會(huì)發(fā)送sync請(qǐng)求和主機(jī)全量同步,當(dāng)多個(gè)同時(shí)出現(xiàn)的時(shí)候,可能會(huì)導(dǎo)致Master IO劇增宕機(jī)。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
名稱欄目:Redis--主從復(fù)制原理-創(chuàng)新互聯(lián)
分享網(wǎng)址:http://aaarwkj.com/article4/dsppie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、品牌網(wǎng)站建設(shè)、小程序開發(fā)、外貿(mào)建站、網(wǎng)站策劃、域名注冊(cè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容