4 ms·
is there anything memcache gives you that a redis instance configured with an eviction policy of allkeys-lru doesn't give you
by zemo 8mo ago
is there anything memcache gives you that a redis instance configured with an eviction policy of allkeys-lru doesn't give you
- nazgul17 8mo agoI imagine the answer here is: less complexity.
- stock_toaster 8mo agomemcached 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.