Decomposition of the Main Thread in Node.js to increase throughput
The growth of functionality in Enterprise Node.js applications often leads to a decline in throughput. In this talk we start with the dispersion of the Node.js Main Thread and spread it into a spectrum of operations. We learn which of these operations we can offload from the Main Thread to threads/workers/processes, and how to do that . We select successful ways of parallelization for each type of operation, consider the benefits and limitations. In addition to the standard methods, we also consider alternative solutions for parallelizing tasks using the capabilities of the V8 and libuv thread pool. And as a result, we’ll take a look at how the application architecture and throughput have changed after the decomposition of the Main Thread.