Hacker Newsnew | past | comments | ask | show | jobs | submit | zhidao9's commentslogin

I built jsbench because tools like wrk and ab are fast but hard to script, while k6 and autocannon are scriptable but sacrifice raw throughput.

  The key idea: for simple benchmarks (URL, request object, array of endpoints),
  JS is only used at startup to read your config. The actual benchmark loop is
  a C state machine with epoll and keep-alive — no JS overhead. For complex
  scenarios (auth flows, chained requests), it falls back to a per-thread
  QuickJS runtime with a standard fetch() API.

  The first version was written entirely by Claude Code (Opus 4.6) — I provided
  the architecture, the AI wrote all ~2,800 lines of C. AI is great at
  "make it work", but I'm not satisfied with the internal design yet,
  so I'm now refactoring by hand.

  Limitations: Linux only (epoll).

  Would love feedback on the API design and scripting model.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: