Redis高可用演進(一)

2022-07-04 17:21:17 字數 1181 閱讀 9094

最近整理redis,對sentinel有了更深入的理解,特地總結如下

1.主從redis

主從redis實際上是一種主備模式,即主redis宕機後,可以切換從redis繼續提供服務。

缺點:1.人為關注master是否宕機

2.無法完成自動切換主從

3.從節點的功能未被充分利用

主從模式:

為了解決上述確定,redis官方提供了sentinel,保證redis的高可用性

命令連線:傳送info命令,與redis保持通訊

訂閱連線:通過訂閱連線,自動發現其他sentinel例項

圖2展示乙個最小規模的sentinel,即至少由三個sentinel例項組成,當被監視的redis被判斷為主管下線時,需要從sentinel中選舉零頭sentinel來進行主從切換

優點:1.sentienl可以監控主從節點的健康狀況,降低了人為監控成本

2.sentinel可以完成主從切換

缺點:1.從節點依然未被充分利用

2.無法做到橫向擴充套件,提供伺服器的只有乙個master

sentinel模式:

圖1

圖23.分片

分片思想主要是利用一致性雜湊演算法,完成redis的橫向擴充套件

1.通過zookeeper儲存sentinel的配置資訊

2.在客戶端實現一致性雜湊演算法,通過路由演算法決定redis命令由那個redis例項進行執行

3.通過增加shard,來分擔單個shard的壓力

缺點:1.擴容時涉及到資料遷移,如果redis中只是快取資料則方便處理,但如果有業務資料強依賴redis,則遷移時只能停機處理

2.無法解決冷熱資料問題

分片模式:

下節重點:

jedisclient客戶單的實現原理

redis 高可用切換 Redis高可用使用方法二

redis高可用使用方法一 redis高可用使用方法三 之前是主從模式下,但如果考慮到主從切換時,對於開發者來說需要更換配置檔案,是乙個不明智的選擇 而官方提供了哨兵模式 當然在官方不提供的前提下方式是有多種解決的 dns,四層等 一 哨兵的配置 cd redis 4.0.12 切換到之前解壓的目錄...

高可用集群架構的演進

我們專案組是做企業資料匯流排的,一開始的架構是採用apache httpd mod jk 做負載均衡,應用則部署在tomcat集群上面,該架構方案雖然考慮了tomcat容器級別的高可用,但並未考慮httpd的高可用,該方案的拓撲圖如下 該方案的缺點顯而易見,一旦httpd宕機,使用者將無法訪問應用,...

Redis的高可用

1.持久化 主要作用是資料備份,將資料儲存在硬碟,保證資料不會因程序退出而丟失 2.複製 哨兵和集群都是在複製的基礎上實現高可用的,複製主要實現了資料的多機備份,以及對於讀操作的負載均衡和簡單的故障恢復 缺陷 故障恢復無法自動化,寫操作無法負載均衡,儲存能力受到單機的限制 3.哨兵 在複製的基礎上,...