Not as poweful as JMeter, but way simpler to get setup, especially from the command line. I am currently using it to throw some load at a dev server to observe the memory utilization over time.
$ vegeta -h
Usage: vegeta [globals] <command> [options]
attack command:
-body="": Requests body file
-duration=10s: Duration of the test
-header=: Request header
-ordering="random": Attack ordering [sequential, random]
-output="stdout": Output file
-rate=50: Requests per second
-redirects=10: Number of redirects to follow
-targets="stdin": Targets file
-timeout=0: Requests timeout
report command:
-input="stdin": Input files (comma separated)
-output="stdout": Output file
-reporter="text": Reporter [text, json, plot]
global flags:
-cpus=8 Number of CPUs to use
examples:
echo "GET http://localhost/" | vegeta attack -duration=5s | tee results.bin | vegeta report
vegeta attack -targets=targets.txt > results.bin
vegeta report -input=results.bin -reporter=json > metrics.json
cat results.bin | vegeta report -reporter=plot > plot.html