您可以根据业务量变动,灵活变更 Redis 实例的配置,包括水平扩缩容(即增减实例的分片数)、垂直扩缩容(即升降节点规格)、增减单分片节点数等。本文介绍 Redis 支持的变配方案。
不同的变更操作适用的 Redis 实例类型不同,具体适用场景如下表所示。
说明
下表中,✔️ 表示当前实例或架构类型支持该变配方案,❌ 表示不支持。
变配操作 | 使用场景 | 影响 | 支持的实例或架构类型 | ||||
---|---|---|---|---|---|---|---|
主备实例 | 单节点实例 | ||||||
启用分片 | 未启用分片 | 启用分片 | 未启用分片 | ||||
主备实例的每个分片中都包含 1 个主节点和至少 1 个从节点,主从节点间具有复制关系。Redis 支持通过增减从节点数量来改变实例的扩展性和高可用性。更多详情,请参见核心组件。 |
| ✔️ | ✔️ | ❌ | ❌ | ||
垂直扩容 | 当实例数据节点 CPU 负载较高或总内存不足时,可以进行扩容操作。 | 变更节点规格过程中,实例可能会出现 1~2 次 连接闪断,每次闪断时长在 30 秒内,请谨慎操作。建议在业务低峰期执行变配操作,并确保客户端配置了正确的重试机制。 | ✔️ | ✔️ | ✔️ | ✔️ | |
垂直缩容 | 通过缩容操作来释放多余的内存容量。 说明 当执行水平或垂直缩容操作时,需保证实例当前的已用内存不超过新内存总容量的 70%,其中新内存总容量 = 变更后的单分片内存 x 分片数。 | ✔️ | ✔️ | ✔️ | ✔️ | ||
水平扩容 | 当实例数据节点 CPU 负载较高或总内存不足时,可以进行扩容操作。 | 增加分片数过程中,实例可能会返回 | ✔️ | ❌ | ✔️ | ❌ | |
水平缩容 | 通过缩容操作来释放多余的内存容量。 说明 当执行水平或垂直缩容操作时,需保证实例当前的已用内存不超过新内存总容量的 70%,其中新内存总容量 = 变更后的单分片内存 x 分片数。 | 减少分片数或变更实例的分片集群配置过程中,实例可能会返回 | ✔️ | ❌ | ✔️ | ❌ | |
变更实例的分片集群配置 | 将未启用分片集群实例变更为启用分片集群实例,来满足业务水平扩容需求。 | ❌ | ✔️ | ❌ | ✔️ |