nodejs / nodejs/performance

The http parser is not async, why does it hook into the async_hook machinery?

Open
#108 7 comments 4 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Shell
Stars
399
Forks
11
Avg merge
29m
Merged PRs (30d)
1

Description

The http parser does quite a bit of additional JS/C++ transitions by being observable via async_hooks. In fact, a wasm build is faster than C++ by avoiding that.

(this is just a hunch, but the benefits should be there).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files, tests, or entry points are named. Start by profiling the HTTP parser's JavaScript/C++ transitions and its interaction with async_hooks, then compare the C++ and WebAssembly builds; done requires evidence showing whether reducing that observability improves performance and a clear direction for the change.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, node.js, wasm
Domain
backend, performance
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.