Node.js as a networking tool Video
I was fairly impressed by the performance of node.js which was outlined in the presentation, serving a 1MB file to 100 concurrent clients (using the ab from apache), node.js served more than 800 requests a second, which is more than 800 MBytes/s, so a single process on a single core saturates 7 gigabit lines.
I was impressed, I had doubts, and ran the benchmark on my own, in which case it even scaled better, maxing at 999 requests a second, which was about 1000Mbyte/s. As Node.js relies on the same eventloop dionaea uses, I tested dionaea's performance, and while dionaea scales not bad, it is no match to node.js. I was surprised enough to add some code to implement a poor mans http server in plain c, which was still slower than node.js, and identified some 'not that smart' decisions. But given dionaea was still pushing out more than 100MByte/s, and it is rather unlikely somebody saturates his gbit line with honeynet traffic, I decided not to mess with this further.
Node.js is a rising star, if you want to get some serious network io done, it will be worth looking at it.
[…] 2011:01:09:27c3_recommendations [carnivore news] […]