集群架构实例默认只有1个LB(负载均衡),当集群分片数量大于8,且总带宽需求超过单个LB的20Gbps(2.5GB/s)上限时,可通过新增LB(最多新增至5个)扩展总带宽。
适用范围
实例需满足以下条件才可使用管理LB功能。
部署模型:云原生
实例架构:集群架构代理模式或已开启读写分离
分片数量:大于8
LB数量说明
不同分片数的集群实例对应支持的最大LB数量如下:
分片范围 | 最大LB数量 |
≤8分片 | 1 |
9-16分片 | 2 |
17-32分片 | 3 |
33-64分片 | 4 |
>64分片 | 5 |
每个LB支持的带宽上限为20Gbps(2.5GB/s)。
影响
新增LB不会导致现有连接中断:现有连接仍由原LB处理,新增LB会在域名解析记录中添加相关IP。需确保客户端DNS及时刷新,若DNS缓存未更新或无新连接建立,将导致流量分配不均。
删除LB会导致60秒以内的服务闪断:闪断时间将取决于客户端DNS刷新机制。删除LB会移除域名解析记录中相关IP,请确保在业务中使用域名(例如r-bp10b3fa3500****.redis.rds.aliyuncs.com)连接实例和客户端DNS缓存及时刷新,且客户端程序具备断线重连机制。
网络变更操作耗时根据LB数量而增减:迁移可用区、变配(加减节点)、大版本升级、修改端口、修改域名、开关TLS,HA整体耗时会随LB数量增减而增减。
新增或删除LB
新增和删除LB均不收费。
访问实例列表,在上方选择地域,然后单击目标实例ID。
在实例详情页下方的配置信息区域,单击带宽右侧的修改按钮。

在右侧弹出页面单击LB调整页签。
新增或删除指定数量LB。
单击确定,实例状态变更为网络变更中。
客户端适配说明
部分客户端由于仅解析一次DNS,且获取所有IP地址后固定选择其中一个IP建立连接,可能导致开启多LB之后,部分LB未收到请求。建议参考以下方案优化适配。
Jedis:使用Jedis 4.1.0及以上版本,详情请参见redis/jedis#2722。
Lettuce 连接池模式:使用 DirContextDnsResolver 实现连接分散。
ClientResources clientResources = DefaultClientResources.builder().dnsResolver(new DirContextDnsResolver()).build(); RedisClient redisClient = RedisClient.create(clientResources, redisURI);go-redis:自定义随机的 DNS 解析方式实现连接分散。
常见问题
Q:如何判断是否需要配置多LB?
A:根据业务带宽需求和分片数选择。若实例是云原生代理模式,总带宽需求大于20Gbps(2.5GB/s)且分片数大于8,可通过增加LB扩展带宽。
Q:专有网络和公网是否都能增加LB?
A:仅支持对专有网络进行增减LB操作,专有网络和公网的LB相互独立。