3 ms·
memcached is multithreaded, so it scales up better per node. memcached clients also frequently uses ketama consistent hashing, so it is much easier to do load/
by stock_toaster 8mo ago
memcached is multithreaded, so it scales up better per node.
memcached clients also frequently uses ketama consistent hashing, so it is much easier to do load/clustering, being much simpler than redis clustering (sentinel, etc).
Mcrouter[1] is also great for scaling memcached.
dragonfly, garnet, and pogocache are other alternatives too.
[1]: https://github.com/facebook/mcrouter https://github.com/facebook/mcrouter
- rrdharan 8mo agoBoth Redis (finally) and Valkey addressed the multithreading scalability issues, see https://oneuptime.com/blog/post/2026-01-21-redis-vs-memcached/view https://oneuptime.com/blog/post/2026-01-21-redis-vs-memcache... and/or https://news.ycombinator.com/item?id=43860273 https://news.ycombinator.com/item?id=43860273...
- zemo 8mo ago> memcached is multithreaded, so it scales up better per node. redis i/o is multithreaded, it's just the command loop that's single-threaded. If all you're doing is SET and GET of individual key-value pairs, every time I've seen a redis instance run hot under that sort of load, the bottleneck was the network card, never the CPU. I ... actually think scaling redis for simple k-v storage is already pretty easy so I dunno that that's much of a concern? mcrouter ... damn I haven't thought about mcrouter in at least 10 years.