在云數據庫 Tair(兼容 Redis)中,您可以創建不同版本的Redis開源版實例,本文介紹Redis開源版各版本的新特性與兼容性變更。
每部分包括社區和阿里云提供的特性及兼容性變更。
Redis開源版 7.0
新特性
關于Redis 7.0的新特性請參見7.0 release note。
例如對于使用Background線程的module命令,慢日志功能會記錄整個掛起的時間;對于普通的Block類命令(例如BLPOP),慢日志功能只會記錄執行時間,不記錄掛起時間。
兼容性
關于社區演進的Breaking change請參見7.0 release note。
例如不再支持STRALGO命令,替換為LCS命令。
不再支持CONFIG SET/GET及其他子命令,您可以通過控制臺或OpenAPI查詢、修改實例的參數設置,更多信息請參見設置實例參數。
不再支持Lua腳本中的allow-oom flag,更多信息請參見#10699。
關于其他命令的支持變化,請參見Redis開源版命令支持。
Redis開源版 6.0
新特性
關于Redis 6.0的新特性請參見6.0 release note。
在集群架構直連模式中,PUBLISH命令會在集群中廣播。
兼容性
關于社區演進的Breaking change請參見6.0 release note。
賬號管理與社區ACL賬號權限存在部分差異,如下為云數據庫 Tair(兼容 Redis)的賬號管理說明:
默認賬號為
default
,實例名賬號(例如r-bp1857n194kiuv****
)為另外一個單獨賬號。通過AUTH命令連接Redis時,若未指定賬號則使用
default
賬號鑒權。通過AUTH命令連接Redis時,若指定的賬號不存在,會返回錯誤
-WRONGPASS invalid username-password pair
,不再自動轉為默認賬號鑒權。開通VPC免密后,通過AUTH命令連接Redis時,若指定的賬號不存在(或指定了密碼且密碼錯誤),會返回錯誤
-WRONGPASS invalid username-password pair
,不再返回OK
。
CONFIG GET命令必須指定配置項,不支持通配符(*)。
關于其他命令的支持變化,請參見Redis開源版命令支持。
Redis開源版 5.0
新特性
關于Redis 5.0的新特性請參見5.0 release note。
支持時延洞察。
支持實時大Key統計。
支持TLS加密。
優化了Blocking連接的喚醒時間精度。
集群架構直連模式支持無感擴縮容。
兼容性
關于社區演進的Breaking change,請參見5.0 release note。
例如Lua腳本執行的命令不再對結果進行排序。
賬號名稱的大小寫敏感。
開通VPC免密后,免密連接可通過AUTH切換不同賬號。
說明若您的不同賬號設置了不同權限,請確保應用程序在權限范圍內執行命令,否則會出現權限不足的報錯。
開放READONLY和READWRITE命令。
云原生版與經典版存在部分差異:云原生版實例開通VPC免密后,所有連接仍需進行白名單驗證,且無法設置
#no_loose_check-whitelist-always
參數。關于其他命令的支持變化,請參見Redis開源版命令支持。
Redis開源版 4.0
新特性
關于Redis 4.0的新特性請參見4.0 release note。
支持審計日志。
支持實時熱Key統計。
開通VPC免密后,可通過設置
#no_loose_check-whitelist-always
參數,選擇是否對同一VPC的網絡連接進行白名單驗證,更多信息請參見參數支持。支持Sentinel兼容模式,需開通VPC免密,僅支持SENTINEL和get-master-addr-by-name兩個子命令。
支持創建多個賬號(賬號名稱大小寫不敏感),并可以對賬號設置讀寫、只讀權限,您可以通過
AUTH user:password
切換賬號。默認賬號為實例名(例如
r-bp1857n194kiuv****
)。若未指定賬號或者賬號不存在,則自動轉為默認賬號鑒權(實例名)。
若開通VPC免密,免密連接無需鑒權,將使用默認賬號,且無法切換賬號。
集群架構支持開通直連模式地址。
集群架構支持通過設置
ptod_enabled
參數,將客戶端IP透傳給DB節點,更多信息請參見參數支持。
兼容性
關于社區演進的Breaking change請參見4.0 release note。
例如集群架構下需要記錄Slot-to-Key的映射關系,所以相同數據的內存占用會比標準架構多。
例如集群架構下SORT命令不支持BY和GET參數。
不再支持SSL加密。
集群架構直連模式不支持部分CLUSTER命令,更多信息請參見Redis開源版命令支持。
集群架構直連模式支持SELECT命令。
說明您無法再使用SELECT命令來判斷當前連接是否為Cluster mode,否則會導致誤判。
在集群架構直連模式中,PUBLISH命令不會廣播至其他節點。
關于其他命令的支持變化,請參見Redis開源版命令支持。
Redis開源版 2.8(已停售)
新特性
關于Redis 2.8的新特性請參見2.8 release note。
支持設置白名單。
支持VPC免密,開啟該功能后:
來自該VPC內的網絡連接無需進行IP白名單驗證。
來自該VPC內的網絡連接執行AUTH命令時,直接返回OK,無需進行密碼驗證。
支持SSL加密。
支持設置禁用命令。
支持代理模式(Proxy)的集群架構。
兼容性
關于社區演進的Breaking change請參見2.8 release note。
不支持部分調試類命令和管理類命令,更多信息請參見Redis開源版命令支持。
提供有限的CONFIG SET/GET命令支持:
CONFIG GET:僅返回部分配置項,不返回安全相關的配置項。
CONFIG SET:僅返回OK,不會修改參數。
提供有限的INFO命令支持,例如不返回Persistence、Replication等安全相關信息。
集群架構代理模式不支持部分命令,更多信息請參見集群架構與讀寫分離架構實例的命令限制。