MZBench is a robust load testing tool. Some key features:
- Ability to generate workload in distributed mode.
- Flexible DSL for running various workload scenarios.
- Putting the results into common metrics-gathering systems like Graphite.
To install MZBench, you need: Erlang R17, CC, C++, Python and PIP.
# clone MZBench repo
git clone https://github.com/machinezone/mzbench.git
# install python packages
pip install -r mzbench/requirements.txt
cd mzbench
# install MZBench server
./bin/mz-bench install_server
# start MZBench server (sudo is required for local provisioning)
sudo ./bin/mz-bench start_server
# run a benchmark with graphite
./bin/mz-bench run examples/ramp.erl --env graphite=<graphite_address>
# or run a benchmark without graphite
./bin/mz-bench run examples/ramp.erl
# check dashboard at http://localhost:4800/ for the results
MZBench scenarios are DSL programs