Redis:主从复制原理
1. 前言
Redis是一個高性能的K-V內(nèi)存數(shù)據(jù)庫。對于Redis來說,當訪問讀請求的并發(fā)量增加的時候,Redis主服務器會成為一個性能瓶頸。為了分擔讀壓力,Redis支持主從復制,Redis的主從結(jié)構(gòu)可以采用一主多從或者級聯(lián)結(jié)構(gòu),Redis主從復制可以根據(jù)是否是全量分為全量同步和增量同步。下圖為級聯(lián)結(jié)構(gòu)。
2. Redis主從復制
2.1 全量復制
當Slave機器連接到Redis集群中時,Slave機器需要進行初始化。這個時候需要進行全量復制。具體步驟如下:
完成上面幾個步驟后就完成了從服務器數(shù)據(jù)初始化的所有操作,從服務器此時可以接收來自用戶的讀請求。
3. Redis增量同步
Redis增量復制是指Slave初始化后開始正常工作時主服務器發(fā)生的寫操作同步到從服務器的過程。 增量復制的過程主要是主服務器每執(zhí)行一個寫命令就會向從服務器發(fā)送相同的寫命令,從服務器接收并執(zhí)行收到的寫命令。
4. Redis主從同步策略
主從剛剛連接的時候,進行全量同步;全同步結(jié)束后,進行增量同步。當然,如果有需要,slave 在任何時候都可以發(fā)起全量同步。redis 策略是,無論如何,首先會嘗試進行增量同步,如不成功,要求從機進行全量同步。
4.1 Redis主從同步策略存在的問題
如果多個Slave斷線了,需要重啟的時候,因為只要Slave啟動,就會發(fā)送sync請求和主機全量同步,當多個同時出現(xiàn)的時候,可能會導致Master IO劇增宕機。
Redis主從復制的配置十分簡單,它可以使從服務器是主服務器的完全拷貝。需要清除Redis主從復制的幾點重要內(nèi)容
總結(jié)
以上是生活随笔為你收集整理的Redis:主从复制原理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NIO详解(三):IO多路复用模型之se
- 下一篇: Redis:哨兵模式(Sentinel)