4

与仅使用常规 Redis 和创建分片相比,使用 Redis Cluster 有哪些优势?

在我看来,Redis Cluster 更多的是关于数据安全(让主从架构来解决故障)。

4

2 回答 2

1

我认为当您需要在不丢失任何数据的情况下重新分片集群时,就会出现差异。

通常使用哈希策略在多个 Redis 服务器之间均匀分片数据,Redis 3.0 集群和twemproxy 都是这样做的。当一个新的 Redis 添加到集群中并且应该由它承担一些数据负载时,你怎么知道它应该服务的任何数据还没有迁移?也许需要对整个密钥空间进行强力扫描,或者像一致性哈希这样的智能方法可以做到,但这有点复杂。

3.0集群通过引入hash slot来保证数据迁移,当你迁移出整个slot时,Redis集群保证不留下key。但恐怕这不是优势,因为它也有劣势:当插槽处于迁移状态时,它可能无法提供查询。

无论如何,这种策略被很多库和工具采用和支持,我认为这是一个优势。

于 2016-05-11T06:31:31.457 回答
1

与使用常规 Redis 和创建分片相比,使用 3.0 集群的最大优势之一是性能。与 twemproxy 或代码代理等相比,Redis 3.0 集群提供了更高的性能。

于 2016-06-09T09:12:35.600 回答