分布式緩存服務Redis版與Redis是什么關系?
天翼云分布式緩存服務Redis版是完全兼容Redis協議的云原生高性能內存數據庫。
任何兼容Redis的客戶端都可以與分布式緩存服務Redis版建立連接進行數據存儲及相應操作。
Redis實例是否有CPU處理能力、帶寬和連接數等限制?
分布式緩存服務Redis實例在CPU處理能力、數據傳輸帶寬(上行/下行)和連接數等方面都有限制。
不同規格實例的性能參數有所區別,詳情請參見規格概覽,您也可以查看購買頁上的對應提示。
單個實例有多少個數據庫?
單個分布式緩存服務Redis版實例默認有256個數據庫(DB)。
說明集群架構實例默認也有256個數據庫(DB)。
Redis實例是否都有主從節點?
節點類型為主備版的Redis實例(含集群實例)都具備主從節點,單機版本的Redis實例則僅具備主節點。具體請參考實例類型概覽
目前支持的實例規格包括標準版-單機、標準版-主備、集群版-單機、集群版-主備,可根據業務場景選用不同規格的實例。通過自研的aof+rdb持久化機制,所有產品系列都支持數據持久化,滿足高性能的同時兼顧數據可靠。
分布式緩存服務Redis版是否開放了作為只讀節點的從節點?
分布式緩存服務Redis版是主從(Master-Replica)雙節點的架構,這種架構下,通常有一個主節點(Master)和一個或多個從節點(Replica)。主節點負責寫操作和處理讀操作,而從節點則負責復制主節點的數據,提供冗余備份和支持讀操作的負載均衡。
目前暫未將從節點作為只讀節點開放。
分布式緩存服務Redis版是否支持主從節點的故障切換?
分布式緩存Redis管理控制臺支持手動切換Redis實例的主從節點,該操作用于特殊場景,例如,釋放所有業務連接或終止當前正在執行的業務操作。
注意
在主備節點切換間,業務會發生少于10秒的連接閃斷,因此在操作前請確保應用具備斷連重建能力。
當執行主備切換時,新的主備關系同步需要消耗較多資源,因此請在業務量空閑時間段執行操作。
主備之間數據同步采用半同步機制,理論上不丟失數據。
分布式緩存服務Redis版是否支持分布式集群的形態?
分布式緩存服務Redis版支持分布式集群的形態。集群實例提供更大的存儲容量及更高的處理能力。Redis的分布式集群是通過多個節點來實現高可用性和橫向擴展的目的。在 Redis 集群中,數據被分割成多個槽(slot),每個槽可以分配到集群中的不同節點上。這樣的設計使得 Redis 能夠在多個節點上存儲大量數據,提高了系統的性能和可伸縮性。
強一致性配置如何理解?
強一致性指主從節點數據同步是否需要強一致,默認關閉。建議不開啟強一致性配置,保持關閉狀態。
開啟強一致配置后,當主節點異常,若從節點未完成數據同步,則不會發生主從切換。
針對分布式緩存redis集群,開啟強一致性配置開關后,當主節點異常宕機后,在高可用主從切換機制觸發前,首先檢測開關是否開啟,若未開啟則直接進入主從切換流程,若開啟該開關后,則在主從切換流程之前先判斷主從數據是否同步,只有在數據同步的情況下才進行后續的主從切換流程。
一鍵檢測readonly如何理解?
一鍵檢測readonly可以自動檢測集群主備所有分片節點,當發現zk中節點為master但實際info角色為slave的會被認為readonly異常,在一鍵檢測readonly子頁面中可以通過操作來完成集群的readonly異常修復。
這種自動檢測和修復的流程有助于提高系統的穩定性和可維護性,減少人為錯誤和手動操作的需求。通過一鍵操作,用戶可以方便地識別和解決集群中的 readonly 異常,確保 Redis 集群正常運行。
實例賬戶權限控制?
每一個集群版緩存實例可以創建多個子賬戶,每個子賬戶有三個屬性,子賬戶名,子賬戶密碼以及子賬戶的讀寫屬性,緩存客戶端的使用鑒權方式保持一致,如jedis.auth(“子賬戶名#子賬戶密碼”)。
其中只讀賬戶對緩存數據的操作是只讀的,讀寫賬戶對緩存數據是讀寫的。通過不同賬戶的讀寫權限控制,可保證緩存實例的操作更加安全可靠。
集群版是否支持多key操作?
支持。首先單機主備天然支持多key操作,其次針對集群架構實例場景下,access代理層會將key列表解析出來,分別構造不同redis分片的協議,經過代理層收集完get結果后再構造協議統一返回給客戶端,應用就像操作單機主備一樣來操作proxy集群實例。
在 Redis 集群中,多key操作指的是能夠同時對多個key執行操作的命令,這些操作可以是讀取、寫入或其他類型的操作。Redis 集群在設計上分為多個節點,每個節點負責管理部分數據。當進行多key操作時,Redis 集群會自動將這些key分發到相應的節點上,然后執行相應的操作。這確保了在分布式環境下的高效操作。
分布式緩存服務Redis的分組如何理解?
Db的別名,與redis的db一一對應,類似于關系型數據庫的表。
group.實例名稱.xxx, xxx可以對應相關的業務表。
客戶端監控指標有哪些?
監控維度包括監控點(集群),標識(客戶端IP),請求接入機地址,分組id, 操作類型(Read/Write),返回碼,請求報文大小(大于32K,大于1K,小于等于1K),返回報文大小(大于32K,大于1K,小于等于1K)等。
統計值包括:請求數量、最大耗時、平均耗時。
接入機監控指標有哪些?
接入機監控維度包括監控點(集群),標識(客戶端IP+端口+名稱),請求來源IP,分組id, 操作類型(Read/Write),Redis實例id,返回碼,請求報文大小(大于32K,大于1K,小于等于1K),返回報文大小(大于32K,大于1K,小于等于1K)等。
統計值包括:請求數量、最大耗時、平均耗時。
管道類批量事務是否支持?
單機主備支持,集群版不支持。
原生的redis事務至少把多條命令封裝成個一批命令組成一個串行的命令管道,不具備acid的事務完整性、一致性和隔離性,使用起來有些應用需要做很多額外的操作,較為繁瑣;若需要解決并發修改沖突,建議采用樂觀鎖機制處理。
什么是Redis分片?
Redis分片是一種數據分布策略,用于將數據分散存儲在多個Redis實例中,從而實現水平擴展和負載均衡。
在Redis分片中,數據被劃分成多個分片(或稱為分區),每個分片存儲部分數據,并由獨立的Redis實例來處理。
Redis分片的主要目的是解決單個Redis實例的存儲容量和性能限制。通過將數據分散到多個實例上,可以將負載分攤到多個節點上,提高整體系統的處理能力和吞吐量。此外,Redis分片還可以擴展存儲容量,因為每個實例都可以存儲一部分數據,總容量可以通過添加更多實例來增加。
什么是Redis副本?
Redis副本(Replication)是指在Redis中通過復制數據來實現數據的冗余和高可用性。
在Redis副本中,一個主節點(Master)負責處理讀寫請求,并將數據復制到多個從節點(Slaves)上。從節點會復制主節點的數據,并與主節點保持同步,以便在主節點故障時可以接替主節點的功能。
實例是否支持跨可用區部署?
Redis標準版主備與集群版主備支持夸可用區部署,如果其中一個可用區故障,另一個可用區的節點不受影響。
備節點會自動升級為主節點。在創建實例時可以選擇跨可用區。
Redis如何實現數據高可用?
布式緩存Redis版標準版主備和集群版主備實例支持部署高可用實例。
您可選擇在單可用區或多可用區中部署實例。當租戶選擇跨多可用區部署實例時,Redis實例會主動建立和維護Redis同步復制。
在實例主節點故障的情況下,緩存實例會自動將備實例升為主節點,從而達到高可用的目的。如果租戶使用緩存實例時,業務中讀取數據比例大,可以選擇集群版主備實例,緩存實例會自動維護主節點和從節點之間的數據同步復制。