load testing

Sep 16, 2022

k6 - recommended by the fly.io team as the best web perf tester they know of

ab (aka apachebench) - the classic, there seem to be better tools these days though

wrk

wrk is a modern HTTP benchmarking tool capable of generating significant load when run on a single multi-core CPU. It combines a multithreaded design with scalable event notification systems such as epoll and kqueue.

wrk2

wrk2 is wrk modifed to produce a constant throughput load, and accurate latency details to the high 9s (i.e. can produce accurate 99.9999%'ile when run long enough). In addition to wrk's arguments, wrk2 takes a throughput argument (in total requests per second) via either the --rate or -R parameters (default is 1000).

hey

hey is a tiny program that sends some load to a web application.

vegeta

Vegeta is a versatile HTTP load testing tool built out of a need to drill HTTP services with a constant request rate. It can be used both as a command line utility and a library.

(ed: a go library)

locust

Define user behaviour with Python code, and swarm your system with millions of simultaneous users.

we used this to good success on MCT


Summary of the options as of 2020, by an author of k6 - still a good reasonably fair article

↑ up