Under the Hood of Undici
summary
Undici is a from‑scratch HTTP client that swaps Node’s event‑emitter model for a dispatcher state machine, uses a Wasm llhttp bridge instead of native bindings, and adds pipelining, keep‑alive, connection pooling, interceptors, DNS caching and SOCKS5 support. Benchmarks show 24,000 requests per second for Undici HTTP/1 and around 9,000 ops/sec for the Undici HTTP/2 agent; HTTP/2 support exists (experimental since 2023) and fetch in Node is powered by Undici.
AI-written summary · about
chapters (14)
- 0:00Undici introduction
- 1:47Node.js HTTP performance issues
- 4:18Why HTTP clients underperform
- 7:26Undici as solution
- 9:09Undici dispatcher design
- 11:37Undici WebAssembly & pipelining
- 12:20Connection pooling & interceptors
- 14:48Undici as Node.js fetch
- 15:49HTTP/2 support in Undici
- 17:56HTTP/2 & WebSockets in Undici
- 19:02HTTP/3 path & future
- 20:33Benchmarking Undici HTTP/2
- 22:20Undici 8 & HTTP/2
- 23:01Closing & resources








