A debugger for asynchronous executions in Node.js
To run the AcmeAir benchmark, the following tools are required:
- git
- curl
- gnuplot
- mongodb
With Ubuntu (LTS versions 16.04 and 18.04) the above dependencies can be installed with the following command:
sudo apt-get install git curl mongodb gnuplot
Note that packages mongodb
and gnuplot
are included in the universe
repository, which is enabled by default in Ubuntu Desktop but not in Ubuntu Server. universe
repository can be enabled with the following commands:
sudo add-apt-repository universe
sudo apt-get update
AsyncG provides an installation script which downloads the binary files together with the AcmeAir
application and its driver program using JMeter
for benchmarking.
The installation script can be run with the command:
./setup.sh
Provided experiments runs the AcmeAir
application and collect performance information using JMeter
. The experiments can be run with the command:
./scripts/figure6.sh
The experiments usually require about half an hour to complete, once completed the performance results are saved as eps
files in the figures
folder.
AsyncG can be used to debug arbitrary Node.js files with the following command:
./scripts/runAsyncG.sh <file.js>
Running the command above will generate logs as output, which can be used to visualuze the Async Graph using the graphs generator tool available at our website: https://asyncgraph.github.io/.
The async graphs generator source code is publicly available at https://github.com/asyncgraph/asyncgraph.github.io.