参考文献

为什么引入Redis Cluster

  • Cluster(集群)模式的出现是解决了Redis单机容量有限的问题,解决了大数据量存储导致的各种慢问题,同时也便于横向拓展.该种模式会将Redis中数据按照一定规则划分到多台机器上.这种模式有两个特点:

    • 能够在多个节点之间自动拆分数据集.

    • 当节点的子集遇到故障或无法与群集的其余部分通信时,能够继续操作.

  • 两种方案对应着 Redis 数据增多的两种拓展方案: 垂直扩展(scale up)、水平扩展(scale out).

    • 垂直拓展: 升级单个 Redis 的硬件配置,比如增加内存容量、磁盘容量、使用更强大的 CPU.
    • 水平拓展: 横向增加 Redis 实例个数,每个节点负责一部分数据.

Redis Cluster数据迁移

  • Redis Cluster迁移数据的整个过程可以分成五个大步骤,分别是:

    • 标记迁入、迁出节点;

    • 获取迁出的 keys;

    • 源节点实际迁移数据;

    • 目的节点处理迁移数据;

    • 标记迁移结果.