Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/StarpTech/profiling-nodejs

🌌 Collection of articles and tools to efficiently profile Node.js
https://github.com/StarpTech/profiling-nodejs

benchmarking flamegraphs monitoring nodejs profiling v8

Last synced: about 2 months ago
JSON representation

🌌 Collection of articles and tools to efficiently profile Node.js

Awesome Lists containing this project

README

        

# profiling-nodejs
🌌 Collection of articles and tools to efficiently profile Node.js

**Listing requirements:** OS independent, Opensource and free of commercial ✊

## 🔥 Flamegraphs

- [0x](https://github.com/davidmarkclements/0x) - Single-command flamegraph profiling.
- [flamebearer](https://github.com/mapbox/flamebearer) - Blazing fast flame graph tool for V8 and Node.
- [ndb](https://github.com/GoogleChromeLabs/ndb) - ndb is an improved debugging experience for Node.js, enabled by Chrome DevTools
- [node-clinic-flame](https://github.com/nearform/node-clinic-flame) - Programmable interface to clinic flame (Use 0x under the hood)

## 👀 Monitoring

- [node-clinic](https://github.com/nearform/node-clinic) - Dashboard to diagnose your Node.js performance issues
- [node-clinic-bubbleprof](https://github.com/nearform/node-clinic-bubbleprof) - Programmable interface to `clinic bubbleprof` (async profiling)
- [node-clinic-doctor](https://github.com/nearform/node-clinic-doctor) - Programmable interface to `clinic doctor` (memory, cpu, process stats)
- [node-trace-events-parser](https://github.com/nearform/node-trace-events-parser) - Fast streaming parser for Node.js trace events
- [ndb](https://github.com/GoogleChromeLabs/ndb) - ndb is an improved debugging experience for Node.js, enabled by Chrome DevTools
- [Async hooks](https://nodejs.org/dist/latest-v10.x/docs/api/async_hooks.html) - API to register callbacks tracking the lifetime of asynchronous resources created inside a Node.js application
- [swagger-stats](https://github.com/slanatech/swagger-stats) - API Telemetry and APM - Trace API calls and Monitor API performance, health and usage statistics
- [deoptigate](https://github.com/thlorenz/deoptigate) - Visual interface to investigate in v8/Node.js function deoptimizations

## 🎏 Benchmarking

- [autocannon](https://github.com/mcollina/autocannon) - Fast HTTP/1.1 benchmarking tool written in Node.js
- [artillery](https://github.com/artilleryio/artillery) - Modern, powerful, hackable backend & API testing toolkit. Load testing & functional testing.
- [nanobench](https://github.com/mafintosh/nanobench) - Simple benchmarking tool with TAP-like output that is easy to parse
- [fastbench](https://github.com/mcollina/fastbench) - The simplest benchmark you can run on node
- [branch-comparer](https://github.com/starptech/branch-comparer) - Checkout multiple git branches, execute scripts and log the results
- [ndb](https://github.com/GoogleChromeLabs/ndb) - ndb is an improved debugging experience for Node.js, enabled by Chrome DevTools
- [benchmark.js](https://github.com/bestiejs/benchmark.js) - A benchmarking library. As used on jsPerf.com
- [perf hooks](https://nodejs.org/dist/latest-v10.x/docs/api/perf_hooks.html) - The Performance Timing API provides an implementation of the W3C Performance Timeline specification

## 🧐 Coverage

- [c8](https://github.com/bcoe/c8) - Output coverage reports using Node.js' built in coverage
- [nyc](https://github.com/istanbuljs/nyc) - The Istanbul command line interface

## 👻 Tracing

- [opentracing-javascript](https://github.com/opentracing/opentracing-javascript) - OpenTracing API for Javascript (both Node and browser)

### 📄 Articles

- [Introducing Clinic Bubbleprof](https://www.nearform.com/blog/introducing-clinic-bubbleprof-a-unique-way-to-visualise-node-js-code/) - Introducing Clinic Bubbleprof, a Unique Way to Visualise Node.Js Code
- [Introduction to libuv](http://nikhilm.github.io/uvbook/An%20Introduction%20to%20libuv.pdf) - An Introduction to libuv Release 2.0.0
- [Learning v8](https://github.com/danbev/learning-v8) - Project for learning V8 internals
- [Learning Node.js](https://github.com/danbev/learning-nodejs) - Project for learning Node.js internals
- [Optimizing prototypes](https://mathiasbynens.be/notes/prototypes) - JavaScript engine fundamentals: optimizing prototypes
- [Shapes and Inline Caches](https://mathiasbynens.be/notes/shapes-ics) - JavaScript engine fundamentals: Shapes and Inline Caches
- [Flame Graphs](http://www.brendangregg.com/flamegraphs.html) — Explanation of what are flame graphs and what types exist.
- [Ready, Steady, Crash!](https://medium.com/ft-product-technology/ready-steady-crash-eeae63e89a77) A briefly introduction in artillery and load testing in general.
- [v8-perf](https://github.com/thlorenz/v8-perf) - Excellent resource to get a deep understanding how to write efficient code on v8.

### Blog of V8 Javascript Engine
> https://v8project.blogspot.com/

This is the official blog of the V8 JavaScript engine which report in regular intervals about improvements and insights.

### Related lists

- [awesome-nodejs](https://github.com/sindresorhus/awesome-nodejs) - Delightful Node.js packages and resources

### License

[![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0/)

To the extent possible under law, [Dustin Deus](http://starptech.com) has waived all copyright and related or neighboring rights to this work.