---
title: "When worker threads beat processes for Node efficiency"
publication: "Node Weekly"
issue: 643
published_at: "2026-10-08"
canonical_url: "https://nodeweekly.com/issues/643"
---

Plus a new process timeout flag, 1980s vocal synthesis and a potential future .node TLD.        

#​643 — October 8, 2026 

[Read on the Web](https://nodeweekly.com/issues/643)   

📝 We're back after taking last week off – you didn't miss an issue :-) If you want one neat thing to check out today, look for the voice synth package below, it's a fun way to relive a bit of 80s nostalgia!
__
Peter Cooper, your editor 

Together with [![Serp API\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,e_trim,w_1280,h_318/e_make_transparent/co_white,e_outline:15/qunbgchsn7czljkekjsk.png)](https://serpapi.com/cooperpress-newsletter)  

![Node.js Weekly](https://res.cloudinary.com/cpress/image/upload/v1653576619/lgfqinzbdqttwmhvljxb.png) 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/etusntxehcije4b6ody0.jpg)](https://medium.com/booking-com-development/node-js-at-scale-rebalanced-how-we-cut-cost-by-38-62ce247a3002)  

[How Booking.com Cut the Cost of Its Biggest Node.js Service by 38%](https://medium.com/booking-com-development/node-js-at-scale-rebalanced-how-we-cut-cost-by-38-62ce247a3002) — The online travel company moved its biggest React SSR service from pm2’s process-based cluster approach to Platformatic’s [Watt](https://docs.platformatic.dev/docs/getting-started/quick-start) and worker threads, then tuned load balancing and V8’s GC to get noteworthy gains. 

Ilya Malyavin (Booking.com)   [![\](https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/195cf43d.png)](https://serpapi.com/cooperpress-newsletter) 

[100+ Search Engines. One Simple API](https://serpapi.com/cooperpress-newsletter) — Build with real-time search data from Google, YouTube, Amazon, and more. SerpApi delivers structured results in JSON and Markdown for AI agents and your next app. Skip scraping headaches. [Start building with a simple API](https://serpapi.com/cooperpress-newsletter). 

SerpApi sponsor   

[Node.js 26.11.0 (Current) Released](https://nodejs.org/en/blog/release/v26.11.0) — A more substantial minor release than usual with a new [`--process-timeout` flag](https://github.com/nodejs/node/pull/66138) that ends a process after a set time (even mid-busy-loop), `node:sqlite` gets [virtual table support](https://github.com/nodejs/node/pull/65787), [`Buffer.stringLength()`](https://github.com/nodejs/node/pull/66064), and Alpine (x64) is promoted to tier 2 support. 

Antoine du Hamel  

⚠️ 26.11 also rolled out [the new docs design](https://beta.docs.nodejs.org/), but a bug was found that caused the docs to not render to HTML, so [v26.11.1](https://nodejs.org/en/blog/release/v26.11.1) reverts back to the old docs design for now.  

**IN BRIEF:** 

- While we were away last week, VoidZero dropped [Vite+ 1.0](https://voidzero.dev/posts/announcing-vite-plus-1-0), its single command (`vp`) Node.js version, package, and frontend toolchain manager. Node's [download page](https://nodejs.org/en/download) has already updated to offering Vite+ as an option.
- With [this commit](https://github.com/nodejs/node/commit/c89ec290f0f82f544e39e6e5f2eab3b6de2c1cca), future releases of Node should [load most ES modules synchronously](https://github.com/nodejs/node/pull/62530), only taking the async path for top-level `await`, loader hooks and the like.
- [V8 15.5 has landed](https://github.com/nodejs/node/pull/66537) on Node's main branch, ahead of Node 27. A big jump from Node 26's V8 14.6.   

[Optimizing Objects with `null` Prototypes](https://adventures.nodeland.dev/archive/optimizing-objects-with-null-prototypes/) — In V8, objects created with `{ __proto__: null }` or `Object.create(null)` start off in a slower ‘dictionary mode’. Creating a plain object and nulling the prototype afterwards keeps it fast, as Matteo shows. 

Matteo Collina   

[I Tested 11 HTTP Resilience Libraries](https://blog.gaborkoos.com/posts/2026-10-04-I-Tested-11-Http-Resilience-Libraries/) — [ffetch](https://github.com/fetch-kit/ffetch)'s creator tests how a variety of fetch wrappers (like [Ky](https://github.com/sindresorhus/ky), [ofetch](https://github.com/unjs/ofetch), and [Wretch](https://elbywan.github.io/wretch/)) handle retries, timeouts and cancellation, and where those policies interact badly. 

Gabor Koos   

[Find Auth Gaps in Your Node APIs Before Hackers Do](https://fandf.co/4yfDcQF) — [SonarQube Hunter Agent](https://fandf.co/4yfDcQF) hunts intent-based vulnerabilities and drops verified findings right into your issue list. 

SonarSource sponsor   

📄 [Node.js Thread Pools on Busy Machines](https://blog.platformatic.dev/more-threads-on-an-already-busy-machine) – Why sizing the thread pool from the CPU count backfires when other processes share the machine. Matteo Collina (Platformatic) 

📄 [Maintaining `wait-on` at Agent Speed](https://www.kevinold.com/blog/a-week-maintaining-wait-on) – [wait-on](https://github.com/jeffbski/wait-on)'s new co-maintainer reflects on his first week managing things agent-style. Kevin Old 

📄 [How to Compile JavaScript into a Single Executable](https://flaviocopes.com/javascript-single-executable/) – A comparison of the Node, Bun and Deno approaches. Flavio Copes   

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/zl46xknjbzir2w3qx7sk.jpg)](https://github.com/dolanmiu/docx/releases/tag/9.9.0)  

[DOCX 9.9: Generate Word `.docx` Files from JavaScript](https://github.com/dolanmiu/docx/releases/tag/9.9.0) — A comprehensive library for generating `docx` files. 9.8 recently added support for charts, shapes and watermarks, and 9.9 adds a way to lay out documents the way Word itself does. [Homepage](https://docx.js.org/). 

Dolan Miu   

[H3 v2: The UnJS HTTP Framework is Rebuilt on Web Standards](https://h3.dev/blog/v2) — A minimal HTTP framework best known for powering Nitro and Nuxt’s server layer. v2 is a rewrite around standard `Request` and `Response`, so one app runs on Node, Bun, Deno and Workers, with `URLPattern`-style routing and `(event, next)` middleware. [More info here](https://h3.dev/guide). 

Pooya Parsa   

🤖 [Klattsch: Retro 1980s Vocal Synthesis](https://crashunited.itch.io/klattsch/devlog/1580425/klattsch-engine-is-free-software-put-it-in-your-game) — 1980s-style phonemes to speech in a single npm package! It's very flexible, you can even make it sing, akin to HAL in _2001_. Works in Node but you can also run it in the browser. 

Crash United   

[Feedsmith 3.0: Fast Web Feed Parser and Generator](https://feedsmith.dev/) — [Parse and generate](https://feedsmith.dev/quick-start) RSS, Atom, and JSON feeds from JavaScript, in both browsers and Node. v2.x users will find [this migration guide](https://feedsmith.dev/migration/v2-to-v3) useful. 

Maciej Lamberski   

- [pnpm 12.10](https://pnpm.io/blog/releases/12.10.0) – An experimental `loaded` linker lets Node load dependencies straight from pnpm's store, skipping `node_modules`linking.
- [Hono 5.0 RC](https://github.com/honojs/hono/blob/v5.0.0-rc.0/docs/MIGRATION.md) – The web-standards server framework goes ESM-only, requires Node 22.12+, and moves runtime adapters into separate packages.
- [Execa 10.1](https://github.com/sindresorhus/execa/releases/tag/v10.1.0) – The process execution library fixes behaviors you may have relied on, like `extendEnv: false` still inheriting`process.env`.
- [Effect 4.0](https://effect.website/blog/releases/effect/40) – The TypeScript effect system gets a rewritten dependency-free core and consolidated packages.
- ⚠️ [Handlebars 4.7.10](https://github.com/handlebars-lang/handlebars.js/releases/tag/v4.7.10) – Fixes two critical JavaScript injection flaws. Earlier 4.x releases are affected.
- [he 2.0](https://github.com/mathiasbynens/he) – Mathias Bynens' HTML entity encoder/decoder gets its first release in 8 years and moves to ESM with named exports.      

📰 Classifieds   

[CodeAF](https://agentfield.ai/github/codeaf/?utm_source=node&utm_medium=newsletter&utm_campaign=node-261008&utm_id=node-261008-codeaf&utm_content=codeaf) fixed 2x OpenCode's issues and nearly 4x Claude Code's on the same model, at up to 4.8x less per fix. [New release, open source](https://agentfield.ai/github/codeaf/?utm_source=node&utm_medium=newsletter&utm_campaign=node-261008&utm_id=node-261008-codeaf&utm_content=codeaf). 

--- 

🚫 Ban the device, not just the account. [Fingerprint's visitor ID](https://fingerprint.com/use-cases/new-account-fraud-prevention/?utm_source=NodeWeekly09242026) catches ban evaders — even incognito or behind a proxy.    

📢 Elsewhere in the ecosystem  

- **`.node` domains?** Confused by the huge number of TLDs available to register? Get ready for more as ICANN has unveiled [a whole new round of them](https://newgtldprogram.icann.org/en/application-rounds/round2) – you can browse [the proposed new gTLDs here](https://gtlds.fyi/) which… includes `.node`!
- Sindre Sorhus, the prolific npm package author, [has disabled outside pull requests](https://bsky.app/profile/sindresorhus.com/post/3mwtgzhv7uk2t) on his repos due to AI, but will keep maintaining them.
- Daniel Lemire [timed linking the Node binary](https://lemire.me/blog/2026/10/06/linking-node-js-with-mold/) with GNU `ld`, `gold`, and `mold`. Mold won easily, which may be useful if you're rebuilding Node a_lot_.
- Theo Browne's [ts-rust](https://github.com/pingdotgg/ts-rust) is an experimental Rust port of the TypeScript 7 compiler, built almost entirely by AI agents.
- 📊 The [2026 _Stack Overflow_ Developer Survey results](https://survey.stackoverflow.co/2026) are out, drawing on 30,903 responses.    

**Got a link for us?** Reply and tell us. We can't include everything but we'll look at anything you send. _Thanks!_ 

--- 

**Sponsorship:** Email `[kristina@cooperpress.com](mailto:kristina@cooperpress.com)` for details. 

--- 

Published by Cooper Press Ltd.
Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom 

[Cancel your subscription](https://nodeweekly.com/leave/*|UID|*) or [change your address](https://nodeweekly.com/edit_subscription/*|UID|*).
