22

我正在阅读 Redis 文档,我对分区功能最感兴趣。

Redis 文档说明如下:

数据存储还是缓存?使用 Redis 和数据存储或缓存时的分区在概念上是相同的,但是有很大的不同。当 Redis 用作数据存储时,您需要确保给定的键始终映射到同一个实例,当 Redis 用作缓存时,如果给定节点不可用,那么如果我们开始使用不同的节点,更改键实例映射,因为我们希望提高系统的可用性(即系统回复我们查询的能力)。如果给定密钥的首选节点不可用,一致的哈希实现通常能够切换到其他节点。同样,如果您添加一个新节点,部分新密钥将开始存储在新节点上。这里的主要概念如下:如果将 Redis 用作缓存,则使用一致的散列进行扩展和缩减是很容易的。如果Redis用作存储,我们需要把keys和nodes之间的map取固定,节点个数固定。否则,我们需要一个能够在添加或删除节点时在节点之间重新平衡密钥的系统,目前只有 Redis Cluster 能够做到这一点,但 Redis Cluster 还没有准备好生产。

从最后一句话我了解到 Redis Cluster 还没有准备好生产。有谁知道这个文档是否是最新的,或者 Redis Cluster 是否已经准备好生产?

4

3 回答 3

30

[更新] Redis Cluster 于2015 年 4 月 1 日在 Redis 3.0.0中发布。

Redis 集群目前正在积极开发中。请参阅 Redis 作者的这篇文章:Antirez

所以我可以暂停其他增量改进,专注于 Redis 集群。基本上我的计划是,只要它没有达到 beta 质量,我的主要工作就是集群,对于 beta 质量,我的意思是,勇敢的用户可能会投入生产。

Redis 集群将支持多达 ~1000 个节点

第一个版本将具有以下功能(摘自 Antirez 帖子):

  1. 密钥空间的自动分区。
  2. 热重分片。
  3. 仅支持单键操作(并且将始终如此)。

截至今天,antirez 正在开发第一个 Redis 集群客户端 ( redis-rb-cluster ),以便用作参考实现。


Redis Cluster 准备好生产后,我将立即更新此答案。

[更新] 2014 年 3 月 28 日 Redis 集群已经在生产中的大型集群上使用(来源:antirez 推文)。

于 2013-02-19T11:16:25.077 回答
2

今天,Redis 3.0.0 的第一个候选版本已经发布,其中包括一个稳定版本的集群:http ://redis.io/download 。

另请参阅 Antirez 的这篇文章:http: //antirez.com/news/79

于 2014-10-09T18:15:40.433 回答
1

Redis 集群包含在 2015 年 4 月 1 日发布的 Redis 3.0.0 中。

--[Redis 3.0.0] 发布日期:2015 年 4 月 1 日

与 Redis 2.8 相比,Redis 3.0 有哪些新功能?

  • Redis Cluster:Redis 子集的分布式实现。

https://raw.githubusercontent.com/antirez/redis/3.0/00-RELEASENOTES

于 2015-04-02T07:21:10.630 回答