mitmproxy/test/bench
2018-07-22 12:47:54 +02:00
..
.gitignore bench: Add some very simple manual benchmarking helpers 2018-03-17 10:06:46 +13:00
benchmark.py benchmark: keep track of requests/responses seen by proxy 2018-05-08 11:00:20 +12:00
README.md Improve benchmarking 2018-04-16 09:19:14 +12:00
run-mitmdump benchmarks: quick-run scripts for mitmproxy and mitmdump 2018-05-08 11:08:37 +12:00
run-mitmproxy benchmarks: quick-run scripts for mitmproxy and mitmdump 2018-05-08 11:08:37 +12:00
serialization-bm.py benchmark: new protobuf serialization performance profiler 2018-07-22 12:47:54 +02:00

This directory contains an addon for benchmarking and profiling mitmproxy. At the moment, this is simply to give developers a quick way to see the impact of their work. Eventually, this might grow into a performance dashboard with historical data, so we can track performance over time.

Setup

Install the following tools:

https://github.com/wg/wrk

go get github.com/cortesi/devd/cmd/devd

You may also want to install snakeviz to make viewing profiles easier:

pip install snakeviz

Now run the benchmark by loading the addon. A typical invocation is as follows:

mitmdump -p0 -q --set benchmark_save_path=/tmp/foo -s ./benchmark.py

This will start up the backend server, run the benchmark, save the results to /tmp/foo.bench and /tmp/foo.prof, and exit.