Redis的模式與集群

2021-10-01 21:16:14 字數 757 閱讀 8430

剛開始學習的時候有一些誤區,以為redis有三種集群模式:主從模式、哨兵模式、cluster模式。

再此梳理一下我的簡單理解

1、單機模式:只有乙個redis節點,讀寫都在其上執行,這樣是redis最簡單的使用,但是萬一節點宕機了,服務就無法使用了。

2、主從模式:為了解決單機模式的不足,同時開啟多個redis節點,配置為一主多從模式,從節點從主節點同步資料(並不是實時的),同步主節點可以進行讀寫,從節點只能讀取。當從節點宕機時並不影響redis集群,只需從啟該節點;但是當主節點宕機時從節點並不會主動成為主節點,集群的讀功能不受影響,但不能寫入,可用性不高且手動修改從節點為主節點容易出錯。

3、哨兵模式:哨兵模式是為了解決主從模式中主節點宕機導致寫服務不可用產生的,其可以視為乙個特殊的redis節點,當主節點宕機後自動在從節點中選出乙個作為主節點,當前宕機的節點恢復時再向主節點同步資料,作為從節點執行。同時哨兵作為乙個程序也有可能掛掉,將哨兵做集群可提高可用性(哨兵模式+主從模式實現了redis的高可用)

4、cluster(集群)模式:哨兵+主從已經實現了高可用,但是單機容量有限,主從備份組合,實際上所有的資料都是儲存在一台伺服器(當然,從節點可以部署在不同伺服器),當資料越來越多,就需要將多套主從模式集群起來通過一定的演算法將資料放到不同的redis主從組合中;至此redis實現了高可用性與拓展性。

以上是粗淺的理解,技術細節還需補足。

參考:

Redis 集群模式說明

基礎概念 cluster模式為server端模式,及資料分布由server控制 設計基本思路 在原有模型 data instance 上抽象出中間層 slot,即 data slot instance,明顯可知演化出了兩種對應關係 請求簡化過程 其他說明 server端模式 主從模式 遺留問題 sl...

Redis集群模式詳解

1.集群節點 1.2 節點啟動 2.槽指派 3.在集群中執行命令 4.重新分片 5.複製與故障轉移 6.集群訊息 7.gossip協議 參考文獻 clusterstate結構 typedef struct clusterstateclusternode結構struct clusternodeclus...

Redis 十一 集群模式

集群是redis的分布式方案,通過分片來進行資料共享,並提供複製和故障轉移功能。一 節點node 集群模式下的redis伺服器叫節點,一開始各個節點相互獨立,連起來後叫集群。通過向某個節點傳送命令 cluster meet 節點和 ip port 伺服器握手成功後就將其新增到所在的集群中。啟動節點 ...