Hello, and my apologies. There’s a nontrivial amount of bash code here.
This is an accompanying repository for a forthcoming blog post about reverse proxy performance. The automation here is intended to perform benchmarking in a maximally reproducible and least hands-on way.
Once any prerequisite setup steps have been completed, you should be able to run, measure, and report on benchmarks with ./bench.sh.
- Install nix flakes.
- Run nix develop .to enter a development shell with all prerequisite programs installed.
- Configure the AWS command-line tools (nixwill install it, you just need to configure it). You’ll be building cloud instances, so you may want to check your setup withaws ec2 describe-instancesor something.
- terraform init
- Copy your desired remote ssh pubkey of choice to ./ssh_pubkey(Terraform will look for it there).
- Put extra spending cash into Jeff Bezos’ wallet:
    ./bench.sh
You may start with additional “virtual users” – k6’s term for concurrent clients – with an invocation like:
VUS=100 ./bench.shYour end results are a file that begins with table in results/ and various .svg files in the same directory generated by gnuplot.