更新时间:2025-11-14 GMT+08:00

Redis实例类型差异

Redis单机、主备、Proxy集群和Cluster集群实例,在特性支持、特性限制以及命令限制有部分差异,具体请查看表1

表1 不同实例类型的差异说明

对比项

单机/主备

Cluster集群

兼容Redis版本

单机/主备兼容开源Redis4.0/5.0/6.0/7.0。可在创建实例时选择版本号。

兼容开源Redis 4.0/5.0/6.0/7.0版本。可在创建实例时选择版本号。

特性支持

  • 支持event notify。
  • 支持pipeline。
  • 支持event notify。
  • 支持brpop、blpop、brpoplpush。
  • 支持发布订阅。

特性限制

仅单机实例不支持数据持久化及备份与恢复的功能。

  • lua脚本受限使用,所有的key必须在同一个slot,建议使用hashtag技术。
  • 需要客户端SDK支持redis cluster协议,需要能够处理"-MOVED"响应。
  • 使用pipeline、mset/mget模式时,所有key必须属于同一个slot,否则报错,建议使用hashtag技术。
  • 使用event notify时,需要建立与每个redis-server的连接,分别处理每个连接上的事件。
  • 执行scan、keys等遍历类或者全局类命令时,需要对每个redis-server分别执行该命令。

客户端协议

使用传统Redis客户端即可。

需要客户端支持Redis Cluster协议。

命令限制

不支持的Redis命令,请参考开源命令兼容性

不支持的Redis命令,请参考开源命令兼容性

副本数

单机实例为单副本,只有一个节点。

主备实例默认为双副本,默认为一主一从的架构。

在创建Redis主备实例时,支持自定义副本数,形成一主多从的架构。目前Redis 3.0主备不支持自定义副本数。

每个集群分片默认为双副本,支持自定义副本数,每个分片可以是一主多从的架构。在创建实例时,也可以定义为单副本,单副本表示实例只有主节点,无法保障数据高可靠。