閱識風云是華為云資訊大咖,擅長將復雜資訊多元化呈現,其出品的一張圖(云圖說)、深入淺出的博文(云小課)或短視頻(云視廳)總有一款能讓您快速上手華為云,更多精彩內容請單擊此處,
摘要:購買Redis實體時,實體型別有單機、主備、Proxy集群、Cluster集群和讀寫分離這么多種,該怎么選?別擔心,本篇云小課把每個Redis實體型別的特點優勢給您一一道來,
本文分享自華為云社區《【云小課】應用平臺第40課 云小課教您如何選擇Redis實體型別》,作者: 閱識風云,
購買Redis實體時,實體型別有單機、主備、Proxy集群、Cluster集群和讀寫分離這么多種,該怎么選?別擔心,小課把每個實體型別的特點優勢給您一一道來,
Redis單機實體
單機實體只有1個節點,1個Redis行程,當Redis行程故障后,DCS為實體重新拉起一個新的Redis行程,秒級恢復業務,
單機實體支持讀寫高并發,但不做持久化,實體重啟時不保存原有資料,
單機實體拓撲圖:
單機實體具有以下特點:
- 系統資源消耗低,支持高QPS
單機實體不涉及資料同步、資料持久化所需消耗的系統開銷,因此能夠支撐更高的并發,Redis單機實體QPS達到10萬以上,
單機實體支持多資料庫(多DB,256個DB),用于資料隔離, - 行程監控,故障后自動恢復
DCS部署了業務高可用探測,單機實體故障后,30秒內會重啟一個新的行程,恢復業務, - 即開即用,資料不做持久化
單機實體開啟后不涉及資料加載,即開即用,如果服務QPS較高,可以考慮進行資料預熱,避免給后端資料庫產生較大的并發沖擊, - 低成本,適用于開發測驗
單機實體各種規格的成本相對主備減少40%以上,適用于開發、測驗環境搭建,
Redis主備實體
Redis的主備實體在單機實體基礎上,增強了服務高可用以及資料高可靠性,
主備實體分片數為1,包含一個主節點,一個或多個備節點,DCS實時探測實體可用性,使用哨兵模式(Sentinel)進行管理,監控主備節點是否正常運行,當主節點出現故障時,會進行主備倒換,恢復業務,
主備實體拓撲圖:
主備實體具有以下特點:
- 持久化,確保資料高可靠
主備實體默認為雙副本(一主一備),支持設定為多副本(一主多備),支持多DB,默認開啟資料持久化功能,可保持節點間資料同步, - 資料同步
主備節點通過增量資料同步的方式保持快取資料一致,
當網路發生例外或有節點故障時,主備實體會在故障恢復后進行一次全量同步,保持資料一致性, - 故障后自動切換主節點,服務高可用
當主節點故障后,連接會有秒級中斷、不可用,備節點在30秒內自動完成主備切換,切換完成后恢復正常訪問,無需用戶操作,保證業務平穩運行, - 多種容災策略
DCS支持將主備實體部署在不同的AZ(可用區)內,節點間電力與網路均物理隔離,您可以將應用程式也進行跨AZ部署,從而達到資料與應用全部高可用, - 讀寫分離
Redis 4.0、Redis 5.0和Redis 6.0基礎版主備實體,分別提供了可讀寫的連接地址(主節點)和只讀地址(備節點),在客戶端連接時,通過增加用戶讀寫請求判斷,將寫請求發送給讀寫域名,讀請求發送給只讀域名,可實作客戶端讀寫分離,
Redis Cluster集群實體
Cluster集群通過分片化磁區來增加快取的容量和并發連接數,每個Shard分片默認是一個雙副本的Redis主備實體,分片本身對外不可見,分片中主節點故障后,同一分片中備節點會升級為主節點來繼續提供服務,
Cluster集群實體拓撲圖:
Cluster集群實體特點:
- 支持選擇不同實體規格(對應不同的Shard分片數),在創建實體時,支持自定義分片大小,暫時不支持自定義分片數,默認每個分片為雙副本架構,副本數可自定義,
- Cluster集群實體,通過使用cluster nodes查詢所有主備節點,客戶端連接備節點,并在節點上做配置,開啟備節點只讀訪問,可實作客戶端讀寫分離,提升快取的整體讀寫能力,配置方法請參考Redis實體是否支持讀寫分離,
- Cluster集群實體默認DB數為1,不支持開啟多DB,
Redis Proxy集群實體
Proxy集群在Cluster集群的基礎上,增加掛載Proxy節點和Elastic Load Balance (ELB)節點,通過ELB節點實作負載均衡,將不同請求分發到Proxy節點(Redis集群代理服務器),實作Redis集群內部的高可用,以及承接客戶端的高并發請求,
Proxy集群實體拓撲圖:
Proxy集群實體特點:
- 支持選擇不同實體規格(對應不同的Proxy節點數和Shard分片數),在創建實體時,支持自定義分片大小,暫時不支持自定義分片數和副本數,默認每個分片為雙副本架構,
- Proxy集群實體默認默認只有一個DB,支持開啟多DB,開啟多DB前需要了解Proxy集群使用多DB限制,
- Proxy集群實體不支持讀寫分離,
Redis讀寫分離實體
讀寫分離實體,后端是一個主備實體,默認包含主備兩個節點(雙副本),支持設定為多副本,即多個備節點,
讀寫分離實體,在主備實體的基礎上,通過ELB節點實作負載均衡,將不同請求分發到Proxy節點,Proxy節點識別用戶讀寫請求,如果是寫請求,轉發給主節點;如果是讀請求,則轉發給備節點,從服務端側實作讀寫分離,
讀寫分離實體拓撲圖:
讀寫分離實體特點:
讀寫分離實體除具有主備實體資料持久化,主備節點資料同步等基本特點以外,還支持服務端讀寫分離,不需要用戶在客戶端做任何配置,
實體型別對比與總結
小課還貼心的為您將每種實體型別做了以下對比分析,方便您根據自己業務的特點和需求做出選擇,
實體型別對比:
實體型別總結:
- 單機實體不支持資料持久化,主要服務于資料不需要由快取實體做持久化的業務場景,
- 在綜合性能上,多分片強于單分片,多副本強于單副本,
- 在負載均衡方面,Proxy集群和讀寫分離實體支持負載均衡,實體具有高可用性的同時,只需使用1個IP,無需多個IP分別訪問每個節點,
- Redis單機、主備和讀寫分離實體默認支持多DB(256個DB),多DB主要用于資料隔離,
- 讀寫分離主要適用于讀高并發、寫請求較少的業務場景,解決高并發的性能問題,節約運維成本,
- 讀寫分離實體為服務端讀寫分離,無需用戶做任何代碼配置,相較與客戶端讀寫分離,使用更方便,
如果您還需要了解實體的記憶體和QPS等規格請戳這里,
點擊關注,第一時間了解華為云新鮮技術~
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/538877.html
標籤:MySQL
上一篇:開源共建 | TIS整合資料同步工具ChunJun,攜手完善開源生態
下一篇:Redis基礎命令
