How does Node.js work?
Node.js is designed to be single-threaded, but has the capability to run on multiple cores by decomposing a thread into sub-processes run by cores using shared sockets. This enables the development of load balancing processes. The cluster module provided by Node.js allows each slave process to maintain its own single-threaded event loop transparently to the user. Ideal real-time two-way streaming of data (including audio and video) is often the strongest reason for choosing Node.js over other technologies.
What is Node.js used for?