Take the same code that sits on nodejs.org home page. Serve a static file that is 1.8Mb. And do the same with Nginx, and watch the difference.
Please share if you know anything that’d prevent this from happening, so we don’t need to deploy nginx servers and complicate our lives.
ps1. this test is done with node 0.6.12. out of curiosity, i downgraded to 0.4.12 just to check if it’s a regression, on the contrary, it was worse. same file used 25% twice.
ps2. this post is not a nodejs hate – we use nodejs, and we love it, except this glitch which actually delayed our launch (made us really sad), and seemed quite serious to me. i’ve never read, heard, seen or expected to come across.
Problem courtesy of: Devrim
What you could do is to use a Buffer
longAssString = fs.readFileSync(pathToABigFile, 'utf8');
longAssString = fs.readFileSync(pathToABigFile);
that way you have your static file in a buffer, buffers are stored outside of V8s heap and require no copy when sent to the network and should therefore be much faster.
Solution courtesy of: stewe