更新时间:2024-11-26 GMT+08:00

Redis Proxy集群实例

DCS Redis Proxy集群实例,是基于LVS+Proxy的高可用集群版本。Redis Proxy集群实例特点:

  • 客户端与云服务解耦。
  • 性能与Cluster集群一样,支持百万并发。
  • 提供灵活的内存规格档位,适配不同场景。
  • 在连接Proxy集群实例时,客户端不需要做特殊配置,使用方式与单机、主备实例相同,使用实例IP地址或域名连接即可,不需要知晓和使用Proxy节点或分片地址。
  • 不支持Redis版本的升级,例如,不支持Redis 4.0 Proxy集群升级为Redis 5.0 Proxy集群实例。如果需要使用高版本Redis Proxy集群实例,建议重新创建高版本Redis Proxy集群实例,然后将原有Redis实例的数据迁移到高版本实例上。
  • DCS新建局点已下线Redis 3.0实例,存量局点可以继续使用Redis 3.0。建议使用Redis 4.0/5.0。
  • Redis 4.0/5.0 依赖于ELB云服务。

Redis 3.0 Proxy集群实例

DCS Redis 3.0 Proxy集群实例基于开源Redis 3.0版本构建,兼容开源codis,提供64G~1024G多种大容量规格版本,用于满足百万级以上并发大容量数据缓存的需要。Redis集群的数据分布式存储和读取,由DCS内部实现,用户无需投入开发与运维成本。

Redis集群实例由“负载均衡器”、“Proxy服务器”、“集群配置管理器”、“集群分片”共4个部分组成。

表1 Redis 3.0集群实例规格和Proxy节点数、分片数的对应关系

集群版规格

Proxy节点数

分片数(Shard)

64GB

3

8

128GB

6

16

256GB

8

32

图1 Redis Proxy集群实例示意图

示意图说明:

  • VPC

    虚拟私有云。集群实例的内部所有服务器节点,都运行在相同VPC中。

    VPC内访问,客户端需要与Proxy集群实例处于相同VPC。

  • 客户应用程序

    客户应用程序,即Redis集群客户端。

    Redis可直接使用开源客户端进行连接,关于客户端连接示例,请参考《分布式缓存服务开发指南》中的“连接实例”。

  • LB-M/LB-S

    负载均衡服务器,采用主备高可用方式。Redis集群实例提供访问的IP地址,即为负载均衡服务器地址。

  • Proxy

    Redis集群代理服务器。用于实现Redis集群内部的高可用,以及承接客户端的高并发请求。

    支持使用Proxy节点的IP连接集群实例。

  • Redis shard

    Redis集群的分片。

    每个分片也是一个Redis主备实例,分片上的主实例故障时,系统会自动进行主备切换,集群正常提供服务。

    某个分片的主备实例都故障,集群可正常提供服务,但该分片上的数据不能读取。

  • Cluster manager

    集群配置管理器,用于存储集群的配置信息与分区策略。用户不能修改配置管理器的信息。

Redis 4.0/5.0 Proxy集群实例

DCS Redis 4.0和5.0 Proxy集群实例基于开源Redis的4.0和5.0版本构建,兼容开源codis,提供4G~1024G多种大容量规格版本,支持x86和Arm两种CPU架构。

Proxy集群每种实例规格对应的分片数,如表2所示,在创建实例时,支持自定义分片大小。当前暂时不支持自定义分片数和副本数,默认每个分片为双副本架构。

每个分片内存=实例规格/分片数,例如,集群规格为48GB的实例,分片数为6,则每个集群分片的大小为48G/6=8G。

表2 Redis 4.0/5.0 Proxy集群实例规格和分片数的对应关系

集群版规格

Proxy节点数

分片数

每个分片内存(GB)

4GB

3

3

1.33

8GB

3

3

2.67

16GB

3

3

5.33

24GB

3

3

8

32GB

3

3

10.67

48GB

6

6

8

64GB

8

8

8

96GB

12

12

8

128GB

16

16

8

192GB

24

24

8

256GB

32

32

8

384GB

48

48

8

512GB

64

64

8

768GB

96

96

8

1024GB

128

128

8

图2 Redis 4.0/5.0 Proxy集群实例示意图

实例示意图说明:

  • VPC

    虚拟私有云。集群实例的内部所有服务器节点,都运行在相同VPC中。

  • 客户应用程序

    客户应用程序,即Redis集群客户端。

    Redis可直接使用开源客户端进行连接,关于多语言客户端连接示例,请参考 《分布式缓存服务开发指南》中的“连接实例”。

  • 终端节点服务

    终端节点服务,主要是将Redis缓存实例配置为VPC终端节点支持的服务,用户可以直接通过终端节点服务的地址访问。

    Redis Proxy集群实例提供的IP地址,即为终端节点服务的地址。

  • ELB

    弹性负载均衡服务器,采用集群高可用方式。

  • Proxy

    Redis集群代理服务器。用于实现Redis集群内部的高可用,以及承接客户端的高并发请求。

    暂不支持使用Proxy节点的IP连接集群实例。

  • Cluster集群

    Redis集群的分片。

    每个分片也是一个双副本的Redis主备实例,分片上的主实例故障时,系统会自动进行主备切换,集群正常提供服务。

    某个分片的主备实例都故障,集群可正常提供服务,但该分片上的数据不能读取。