Salvo
This is the replacement for https://github.com/tarekziade/boom
Salvo is a simple command line tool to send some load to an HTTP(S) endpoint.
Salvo is a script you can use to quickly smoke-test your web app deployment. If you need a more complex tool, I'd suggest looking at Molotov
Salvo was specifically written to replace my Apache Bench (ab) usage. Salvo is based on Molotov, which uses Python 3 asyncio & aiohttp.
Installation
Salvo requires Python 3.6+ and Molotov, which gets installed as a dependency.
Just do:
$ pip install salvo
Basic usage
Basic usage example: 100 queries with a maximum concurrency of 10 users:
% salvo http://localhost:80 -c 10 -n 100 -------- Server info -------- Server Software: nginx/1.18.0 Host: localhost -------- Running 100 queries - concurrency 10 -------- [================================================================>.] 99% -------- Results -------- Successful calls 1000 Total time 16.0587 s Average 0.0161 s Fastest 0.0036 s Slowest 0.2524 s Amplitude 0.2488 s Standard deviation 0.011326 Requests Per Second 62.27 Requests Per Minute 3736.29 -------- Status codes -------- Code 200 1000 times.
You can also use --duration if you want to run for a given amount of time.
For a full list of features, run salvo --help
Contribute
Salvo is very simple and anyone familiar with Python can contribute.
If you are interested in this project, you are welcome to join the fun at https://github.com/tarekziade/salvo
Make sure to add yourself to the contributors list if your PR gets merged. And make sure it's in alphabetical order!