"The Node.js Event Loop: Not So Single Threaded"
Abstract
You've probably heard, and possibly lamented, that Node.js is single threaded. It's true that all JavaScript executed by Node.js is run in a single thread. This means each JavScript file you write, module you require, and even Node.js itself, all contend for processing time.
But JavaScript isn't the only code in Node.js. There's also a lot of C++, most important of which is the event loop. One of the event loops responsibilities is to manage a set of threads called the thread pool. As it turns out, most C++ code in Node.js is multithreaded!
Come learn how the event loop works in detail, how it affects the performance of your app, and how you can use this knowledge to your advantage!
Slides
Useful Links
This is the GitHub repo for Node.js' event loop itself.
A great talk on the event loop by Sam Roberts at IBM and Node.js core collaborator
A good blog post based on the above talks by Daniel Khan
Another great talk on the event loop, this time by libuv core collaborator Bert Belder