HTTP, with streaming and low latency in mind, is a first-class citizen in Node.js. This makes Node.js suitable for a web library or framework foundation.
Designing Node.js without threads does not mean that multiple cores in your environment can not be taken advantage of. By using our child process .fork) (API, child processes can be spawned and are designed to be easy to communicate with. The cluster module, which allows you to share sockets between processes to enable load balancing over your cores, is built on that same interface.