I’ve been evaluating Redis as a caching / in-memory DB solution for our platform and I’ve been largely impressed as it appears to be a good option for us.
However, when using Redis replication coupled with Redis sentinel I am troubled by the behavior I’m seeing during master failover events.
Our dataset is approximately 35GB in size and it takes almost 10 minutes for a Redis replica to flush its own DB and reload the new DB synced from the new master.
During this time, our Redis clients experience in essence a complete outage due to response timeouts trying to reach the Redis replicas, which are all simultaneously blocking while they flush and reload their DBs.
I have configured Redis sentinel with “parallel-syncs” as the default of “1”, yet all replicas more or less sync at the same time. Also, PSYNC does not seem to initiate, either.
Is this a known/valid problem or is it likely something with my configuration?
Any guidance you might be able to provide would be most appreciated.
-Kevin
--
You received this message because you are subscribed to the Google Groups "Redis DB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to redis-db+unsubscribe@googlegroups.com.
To post to this group, send email to redi...@googlegroups.com.
Visit this group at https://groups.google.com/group/redis-db.
For more options, visit https://groups.google.com/d/optout.
I don't think you mis-configure anything. It just takes that much amount of time to flush old data and load a RDB file into memory for 35GB data.You can consider Redis Cluster which you can shard the key space across many machines so that the size of each Redis instance can be much smaller and take less time to recover from a failover.
On Fri, Apr 21, 2017 at 8:26 AM, Kevin Johnson <s...@troutlogic.com> wrote:
Hello,I’ve been evaluating Redis as a caching / in-memory DB solution for our platform and I’ve been largely impressed as it appears to be a good option for us.
However, when using Redis replication coupled with Redis sentinel I am troubled by the behavior I’m seeing during master failover events.
Our dataset is approximately 35GB in size and it takes almost 10 minutes for a Redis replica to flush its own DB and reload the new DB synced from the new master.
During this time, our Redis clients experience in essence a complete outage due to response timeouts trying to reach the Redis replicas, which are all simultaneously blocking while they flush and reload their DBs.
I have configured Redis sentinel with “parallel-syncs” as the default of “1”, yet all replicas more or less sync at the same time. Also, PSYNC does not seem to initiate, either.
Is this a known/valid problem or is it likely something with my configuration?
Any guidance you might be able to provide would be most appreciated.
-Kevin
--
You received this message because you are subscribed to the Google Groups "Redis DB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to redis-db+u...@googlegroups.com.
To post to this group, send email to redi...@googlegroups.com.
Visit this group at https://groups.google.com/group/redis-db.
For more options, visit https://groups.google.com/d/optout.