It depends on how you use it. Node.js is single-threaded by default, but using the (relatively) new cluster module you can scale horizontally across multiple threads.
In addition, your database needs will also determine how scalable with Node is. For example, using MySQL with Node.js will not do you nearly as much good as using MongoDB, due to the event-driven nature of both MongoDB and Node.js.
The following link has many good system tests with various settings: http://www.techempower.com/benchmarks/
Node.js does not rank the highest, but compared to other settings using nginx (no apache in their tables, but close enough), this is pretty good.
Again, this greatly depends on your needs. I believe that if you just use static websites, it is recommended that you stick to a more traditional stack. However, people did some amazing things with Node.js for other needs: http://blog.caustik.com/2012/08/19/node-js-w1m-concurrent-connections/ (c10k? Ha!)
Edit: It's worth mentioning that you really don't βreplaceβ just apache Node.js. You would replace apache and php (in a typical lamp stack).
Kevin Lee May 16 '13 at 4:39 2013-05-16 04:39
source share