Read online
The full book stays free online. No account, no paywall, no drip-feed.
Start readingVolume I is complete. The Digital Bundle includes the EPUB, light PDF, dark PDF, slides, and cheatsheets. NodeBook is completely free to read online!
NodeBook curriculum
Advanced Node.js internals
_
The full book stays free online. No account, no paywall, no drip-feed.
Start readingGet the EPUB, light/dark PDFs, visual slides, and cheatsheets.
Get Digital BundleWork through paid phase-based labs that turn Node internals into working tools.
View study optionsNodeBook explains what happens inside the runtime when your application handles I/O, schedules work, allocates memory, and serves traffic.
Understand poll/check/idle phases, threadpool queueing, and platform differences across epoll, kqueue, and IOCP.
Debug deoptimizations, hidden class transitions, and polymorphic inline cache misses with practical examples.
Implement binary protocols with backpressure-aware transforms, scatter/gather I/O, and external memory management.
Build thread-safe N-API modules, move work through uv_queue_work, and handle memory across JavaScript and C++ boundaries.
Propagate trace context with AsyncLocalStorage, control metrics cardinality, and analyze latency with flamegraphs.
Tune generational GC flags, track retainers in heap snapshots, handle external memory pressure and OOM mitigation.
Most Node.js tutorials stop at syntax. NodeBook focuses on runtime behavior. This example shows how backpressure changes memory use under load.
Buffering an entire file before sending it can exhaust the V8 heap under concurrent traffic.
Read in chunks, respect `highWaterMark`, and pause the readable stream when the writable side applies pressure.
const fs = require('fs');const http = require('http'); http.createServer((req, res) => { // Problem: // fs.readFile buffers the entire file content into V8 heap. // If 'big_data.csv' is 2GB and you have 50 concurrent requests, // your process crashes immediately with heap out of memory. fs.readFile('./big_data.csv', (err, data) => { if (err) throw err; res.end(data); }); }).listen(3000); // Status: Process terminated.// Reason: JavaScript heap out of memoryThis curriculum assumes you already write JavaScript regularly. It focuses on runtime behavior, operational tradeoffs, and the details that matter when Node.js runs in production.
Volume I EPUB, light PDF, dark PDF, slides, and cheatsheets are available through /get.
Work execution, data, security, production engineering, and platform architecture follow the networked APIs volume.
NodeBook is free to read online. Paid options add the Volume I offline bundle or Node Runtime Labs.
The entire book, available online forever. No paywalls, no ads, no trackers.
Own the offline files for Volume I: Runtime Foundations, plus the slides and cheatsheets.
Build runtime concepts through paid phase-based Markdown labs with checkpoints, hints, debugging notes, and expected output.
Volume I EPUB, light and dark PDFs, slides, and cheatsheets are included in the paid Digital Bundle.
Get Digital BundleJust wanted to say thank you for keeping this resource free and accessible. Not everyone can afford expensive courses, and this really helps people like me who are trying to learn on a budget.
I've been looking for something that actually explains how Node works under the hood, not just how to use it. This is exactly what I needed. Appreciate you putting this together and sharing it with everyone.
Finally a resource that doesn't assume I already know everything. The explanations are clear and the examples actually make sense. Thanks for taking the time to write this up.