Abdullah Ali

Multi-Threaded JavaScript

Abdullah is an independent C++/JavaScript developer. He likes to dabble into machine learning and computational neuroscience. 


The Mad Cousin - Multi-threaded JavaScript

We explore the potential of introducing multithreading to a single-threaded world. Nexus.js is a multi-threaded cousin to Node.js. It introduces a paradigm shift into the world of server-side JavaScript as we know it. In addition to supporting ES6 out of the box, the system introduces promises that run on all CPU cores in parallel. Making it a unique environment to explore the potential of a truly concurrent JavaScript.

The journey begins with the lack of an event-loop. Nexus.js instead implements a cooperative thread-pool scheduler, which allows it to handle tasks in parallel.

We will explore the architecture behind this, how it works, and why this project was launched in the first place. We will also explore the challenges and benefits of scaling in a multi-threaded environment and how it differs from scaling with Node.js on modern hardware.