This repository aims to automate the execution of multiple load generators against the same server (simultaneously).
If you want to run the complete automated test, simply run:
./scripts/run-benchmarks.sh
You can also skip some load generators:
ARTILLERY_ENABLED=false K6_ENABLED=false HF_ENABLED=true JMETER_ENABLED=true ./run-benchmarks.sh
Note
You need to satisfy all prerequisites, otherwise the script might fail.
Alternatively you can simply startup the server by running:
./scripts/start-server.sh
And then run you own tests.
To run run-benchmarks
script you need to ensure all load generators listed below are installed or present in your local system.
Keep in mind that you can override the executable as you prefer, see the run-benchmarks overridable configuration.
For the sake of simplicity, the server is a minimal Quarkus based web application.
Checkout https://github.com/franz1981/quarkus-profiling-workshop for more information.
At the moment of writing these are the load generators I've been using:
A microservice-oriented distributed benchmark framework.
Checkout https://hyperfoil.io/ for more details and how to install/download it.
The Apache JMeter™ application is a pure Java application designed to load test functional behavior and measure performance.
Checkout https://jmeter.apache.org/ for more details and how to install/download it.
Artillery is an open source load testing platform.
Checkout https://www.artillery.io/ for more details and how to install/download it.
An extensible load testing tool.
Checkout https://k6.io/open-source/ for more details and how to install/download it.