🌌 Collection of articles and tools to efficiently profile Node.js
Listing requirements: OS independent, Opensource and free of commercial ✊
- 0x - Single-command flamegraph profiling.
- flamebearer - Blazing fast flame graph tool for V8 and Node.
- ndb - ndb is an improved debugging experience for Node.js, enabled by Chrome DevTools
- node-clinic-flame - Programmable interface to clinic flame (Use 0x under the hood)
- node-clinic - Dashboard to diagnose your Node.js performance issues
- node-clinic-bubbleprof - Programmable interface to
clinic bubbleprof
(async profiling) - node-clinic-doctor - Programmable interface to
clinic doctor
(memory, cpu, process stats) - node-trace-events-parser - Fast streaming parser for Node.js trace events
- ndb - ndb is an improved debugging experience for Node.js, enabled by Chrome DevTools
- Async hooks - API to register callbacks tracking the lifetime of asynchronous resources created inside a Node.js application
- swagger-stats - API Telemetry and APM - Trace API calls and Monitor API performance, health and usage statistics
- deoptigate - Visual interface to investigate in v8/Node.js function deoptimizations
- autocannon - Fast HTTP/1.1 benchmarking tool written in Node.js
- artillery - Modern, powerful, hackable backend & API testing toolkit. Load testing & functional testing.
- nanobench - Simple benchmarking tool with TAP-like output that is easy to parse
- fastbench - The simplest benchmark you can run on node
- branch-comparer - Checkout multiple git branches, execute scripts and log the results
- ndb - ndb is an improved debugging experience for Node.js, enabled by Chrome DevTools
- benchmark.js - A benchmarking library. As used on jsPerf.com
- perf hooks - The Performance Timing API provides an implementation of the W3C Performance Timeline specification
- c8 - Output coverage reports using Node.js' built in coverage
- nyc - The Istanbul command line interface
- opentracing-javascript - OpenTracing API for Javascript (both Node and browser)
- Introducing Clinic Bubbleprof - Introducing Clinic Bubbleprof, a Unique Way to Visualise Node.Js Code
- Introduction to libuv - An Introduction to libuv Release 2.0.0
- Learning v8 - Project for learning V8 internals
- Learning Node.js - Project for learning Node.js internals
- Optimizing prototypes - JavaScript engine fundamentals: optimizing prototypes
- Shapes and Inline Caches - JavaScript engine fundamentals: Shapes and Inline Caches
- Flame Graphs — Explanation of what are flame graphs and what types exist.
- Ready, Steady, Crash! A briefly introduction in artillery and load testing in general.
- v8-perf - Excellent resource to get a deep understanding how to write efficient code on v8.
This is the official blog of the V8 JavaScript engine which report in regular intervals about improvements and insights.
- awesome-nodejs - Delightful Node.js packages and resources
To the extent possible under law, Dustin Deus has waived all copyright and related or neighboring rights to this work.