帮你快速理解、总结文档立即下载

集群架构

最近更新时间:2026-08-13 16:46:00
我的收藏

架构概述

集群架构是基于社区版 Redis Cluster 打造的分布式缓存架构,兼容 Redis 4.0、5.0、6.2、7.0及 Valkey 8.0及以上版本协议。系统采用分布式分片设计,支持1~128个分片的水平扩展和1~5个副本的垂直扩展,可提供千万级 QPS 的高性能。扩容、缩容、迁移过程对业务几乎无感知,保障服务高可用。具体性能数据,请参见 规格与性能

核心组件

组件
说明
分片 Shard
分布式存储的最小逻辑单元。集群将16384个哈希槽(Slot)分配至各分片。每个分片由一个主节点及若干副本节点组成,负责存储对应槽位的数据,并支持在线数据均衡与动态迁移。
主节点 Master
分片内负责处理读写请求的核心节点。每个分片有且仅有一个主节点,负责数据写入并实时同步至其所属的副本节点。
副本节点 Replica
分片内负责数据冗余与高可用的节点。实时同步主节点数据;当主节点发生故障时,系统会自动将其中一个副本节点提升为新主节点。
代理层 Proxy 集群
内置代理组件,负责接收客户端请求并路由到对应分片。提供负载均衡、读写分离和跨分片命令处理能力,屏蔽集群拓扑细节。Proxy 的路由规则、命令兼容性、连接数限制等详细信息,请参见 Proxy 特性

实现介绍

实例对外提供统一的虚拟 IP 访问地址(VIP:Port)。客户端可直接使用标准 Redis 客户端(如 redis-cli、Jedis、Lettuce)进行连接,由内置的 Proxy 组件解析命令并按槽位路由至对应分片。Proxy 支持部分跨槽命令的聚合处理,且透明承载扩缩容、故障切换等拓扑变更,业务侧无需感知。


连接示例

集群架构连接模式支持业界主流的多语言 Redis 客户端。下表列出各开发语言推荐的客户端及其在代理模式下使用的连接类,单击对应语言可跳转至详细连接示例。连接前的准备工作、认证方式与连接验证等通用说明,请参见 连接准备
开发语言
推荐客户端
推荐版本
连接类
连接示例
Java
Jedis
5.1.2及以上
JedisPool
Java
Lettuce
6.3.0及以上
RedisClient
Python
redis-py
最新稳定版
redis.Redis
Go
go-redis
v9
redis.NewClient
Node.js
node-redis / ioredis
最新稳定版
createClient / new Redis()
PHP
phpredis
5.0及以上
Redis
C
hiredis
最新稳定版
redisConnect
.Net
StackExchange.Redis / ServiceStack.Redis
最新稳定版
ConnectionMultiplexer

分片与副本配置

分片数越多,容量和性能越高。所有分片均参与数据存储和请求处理。分片数 ≥ 1 时,数据自动按哈希槽分布,在水平方向扩展存储容量和吞吐性能。
副本数越多,可用性越高。所有副本节点均参与高可用切换。副本数 ≥ 1 时,可开启读写分离功能,在垂直方向扩展读性能。具体信息,请参见 读写分离
说明:
跨槽位的命令存在一定兼容性限制,详情请参见 命令参考概览
配置项
可选规格
分片规格(GB)
1、2、4、8、12、16、20、24、32、40、48、64GB
分片数量
1、3、5、8、12、16、24、32、40、48、64、80、96、128
副本数量
1、2、3、4、5

规格上限

规格项
上限
说明
总存储容量
8TB
128分片 × 64GB/分片
并发性能
千万级 QPS
腾讯云在标准测试环境下多次压测,取稳定值作为官方参考。具体信息,请参见 规格与性能