Tair (Redis OSS-compatible)叢集架構執行個體基於新一代管控架構,提供了全新的擴縮容解決方案。在擴容(增加叢集分區數量)、縮容(減少叢集分區數量)時可以有效規避應用側產生-ASK
、 -TRYAGAIN
等錯誤,實現無感擴縮容。
特性說明
Tair (Redis OSS-compatible)叢集架構執行個體擴縮容具有以下特點:
高效的擴縮容管理:通過中心化的控制組件,實現對叢集行為的高效、精準控制。
無感知的資料移轉:深入修改核心的資料複製邏輯,實現Business Connectivity不閃斷、無唯讀狀態。
彈性資源伸縮:支援隨時Auto Scaling,滿足不同業務情境下的資源需求。
與原生Redis Cluster擴縮容相比,本特性具備下述優勢:
無報錯請求:在擴縮容期間,應用側請求不會產生錯誤,大幅度提高了業務的穩定性和使用者體驗。
說明無感擴縮容特性無法保證在所有情境下均生效,在少部分擴縮容情境中(請參見注意事項),應用側依舊可能會有報錯。因此,不建議應用側完全依賴本特性,請提前設計好預案。
最小化延遲:在擴縮容過程中,根據寫入流量的不同,應用側可能會觀察到數百毫秒到數秒的延遲,但通常不會影響業務的正常運行。
適用執行個體
適用下述執行個體版本:
Redis開源版5.0執行個體(小版本5.2.0及以上)
Redis開源版6.0執行個體(小版本6.0.2.0及以上)
Redis開源版7.0執行個體
Tair(企業版)記憶體型相容Redis 5.0版(小版本5.0.34及以上)
Tair(企業版)記憶體型相容Redis 6.0版
Tair(企業版)記憶體型相容Redis 7.0版
注意事項
經典版叢集架構代理模式不支援本特性。
用戶端要求:
擴縮容期間,用戶端與執行個體不會斷連,但可能會有較高的延遲導致用戶端命令逾時,需要用戶端具有逾時重連能力。
若執行個體為叢集架構直連模式,需要用戶端能正確處理MOVED命令。
說明建議使用阿里雲推薦的用戶端。
使用命令要求:
在擴縮容期間使用Blocking類命令可能會產生報錯。
在擴縮容期間使用Pub/Sub類命令不提供一致性保證,且視用戶端實現可能會產生報錯。