NodeJs was built with the intention of supporting asynchronous operations.... and the fact is that the asynchronous operations have better performance and scalability when they are single-threaded over multi-threaded. This is the reason the NodeJs is single threaded.