corvus icon indicating copy to clipboard operation
corvus copied to clipboard

Corvus key distribution algorithm

Open inigoml opened this issue 7 years ago • 2 comments

Hi. We are currently working with nutcracker (twemproxy) in order to create our own redis cluster. However we are experiencing some scaling problems due to twemproxy is not multithreaded. In order to start testing with Corvus using the same existing cluster, we would like to know which key distribution algorithm is being used currently in order to know if we can use the same existing cluster to test in parallel both solutions. If corvus use ketama as algorithm we would use is without any complex migration procedure for our persistent keys.

Thanks in advance.

inigoml avatar May 08 '18 07:05 inigoml

Corvus is a proxy for cluster mode Redis(>=3.0). So the key distribution algorithm is determined by the sharding mechanism of Redis. And I think you have to prepare a migration process as the ketama algorithm is not used by Redis.

maralla avatar May 08 '18 09:05 maralla

OK, totally understood. Twemproxy does not use redis cluster and so distribution is done by proxy. If we want to migrate to Corvus we should take care of non-persistent keys currently inside our twmproxied redis cluster.

inigoml avatar May 09 '18 14:05 inigoml