globalping icon indicating copy to clipboard operation
globalping copied to clipboard

Try migration to dragonfly

Open alexey-yarmosh opened this issue 2 years ago • 2 comments

Seems like all redis JSON operations which we are using (get, set, strappend) are implemented by dragonfly team/contributors (https://github.com/dragonflydb/dragonfly/releases/tag/v0.12.0). Since that was a main blocker in using dragonfly we can try to migrate to it and measure the performance diff.

Questions to answer:

  • Does our API work correctly after migrations?
  • Do utility tools work fine (monitoring, integration with newrelic, db management tools)?
  • What is the perf diff?

alexey-yarmosh avatar Jan 03 '23 15:01 alexey-yarmosh

I don't think this is necessary at all because redis can scale just as well or better with the cluster module, we just don't use it yet. The client library has support for clustering, so with small config changes, we should be able to utilize all cores with redis, too, without using an entirely different DB.

The benchmarks at https://redis.com/redis-enterprise/technology/linear-scaling-redis-enterprise/ suggest redis achieves almost 100% linear scaling, while dragonfly showcases "25x speedup" but that's on a 32 core / 64 thread server - so at least on the first sight, worse than redis.

MartinKolarik avatar Mar 14 '23 15:03 MartinKolarik

Clustering Redis reliably is a pain, especially on OSS version. So I am 100% for migration to Dragonfly

jimaek avatar Mar 14 '23 15:03 jimaek