3 ms·
The Whatsapp 2 million connection result was on a 24 core box with a ton of RAM. The Clojure benchmark was pulled off on a 4-core desktop. Also, Whatsapp connec
by trailfox 14y ago
The Whatsapp 2 million connection result was on a 24 core box with a ton of RAM. The Clojure benchmark was pulled off on a 4-core desktop. Also, Whatsapp connections are mostly idle, only a small fraction of users would be sending a message in any given second.
Edit: It looks like the test was run only on localhost, which also means that it artificially removes much of the processing and actual network I/O factors from the equation.
- johncoogan 14y agoThis is a good point, the exact hardware comparison is as follows: | Clojure | WhatsApp --------------------------- CPU | i7-2600 | Xeon X5675 Clock| 3.4GHz | 3.07GHz Cores| 4 | 24 RAM | 16G | 96G Conns| 600,000 | 2,000,000 It seems pretty clear that the performance increase is line with the better hardware specs.
- rorrr 14y agoExcept that Whatsapp connections are actually doing something, while in this meaningless test most of them are idle.
- rvirding 14y agoThen what are we really measuring? Is it how many connections we get can get on as small a machine as possible? If so then I am sure I can get 600K connections with Erlang in a smaller system. At least running a benchmark. There is one very significant difference and that is that the Clojure benchmark was just a benchmark while for WhatsApp it was their actual system doing something real. They have mentioned to me that they have managed to push their system to 3M connections but not in production.