The quick answer is that MongoDB mmaps it's entire data set, so if you've got more data than ram (likely) the OS is going to constantly have all excess ram allocated to Mongo. This becomes an issue because Redis (very reasonably) assumes that malloc will return quickly, however, if the OS decides it's going to give Redis a dirty page, that malloc call just became disk bound.
HN user
wmoss
-4 karma
Posts0
Comments3
No posts found.
Redis at Bump: many roles, best practices, and lessons learned 15 years ago
I think the move to async frameworks is primarily precipitated by the fact that a file handle (which is, essentially, what an async framework holds per connection) is substantially lighter weight than a thread. When you're talking about writing a server that can handle thousands of concurrent connections, threads just become computationally infeasible.
Clojure, Node.js and Concurrency Fail 16 years ago
This is the best Hacker News story in years. Finally a post about both Closure and Node.js.