Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
546 views
in Technique[技术] by (71.8m points)

caching - Redis Cluster - production ready?

I was reading Redis documentation, and I am most interested in the partitioning feature.

Redis documentation states the following:

Data store or cache? Partitioning when using Redis ad a data store or cache is conceptually the same, however there is a huge difference. While when Redis is used as a data store you need to be sure that a given key always maps to the same instance, when Redis is used as a cache if a given node is unavailable it is not a big problem if we start using a different node, altering the key-instance map as we wish to improve the availability of the system (that is, the ability of the system to reply to our queries). Consistent hashing implementations are often able to switch to other nodes if the preferred node for a given key is not available. Similarly if you add a new node, part of the new keys will start to be stored on the new node. The main concept here is the following: If Redis is used as a cache scaling up and down using consistent hashing is easy. If Redis is used as a store, we need to take the map between keys and nodes fixed, and a fixed number of nodes. Otherwise we need a system that is able to rebalance keys between nodes when we add or remove nodes, and currently only Redis Cluster is able to do this, but Redis Cluster is not production ready.

From the last sentence I understand that Redis Cluster is not production ready. Does anyone knows whether this documentation is up to date, or Redis Cluster is already production ready?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

[Update] Redis Cluster was released in Redis 3.0.0 on 1 Apr 2015.

Redis cluster is currently in active development. See this article from Redis author: Antirez.

So I can pause other incremental improvements for a bit to focus on Redis Cluster. Basically my plan is to work mostly to cluster as long as it does not reach beta quality, and for beta quality I mean, something that brave users may put into production.

Redis Cluster will support up to ~1000 nodes.

The first release will have the following features (extracted from Antirez post):

  1. Automatic partition of key space.
  2. Hot resharding.
  3. Only single key operations supported (and it will always be that way).

As of today antirez is working on the first Redis cluster client (redis-rb-cluster) in order to be used as a reference implementation.


I'll update this answer as soon as Redis Cluster goes production ready.

[Update] 03/28/2014 Redis Cluster is already used on large cluster in production (source: antirez tweets).

image


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...