Simple tool to benchmark a ranna server instance.
$ go run cmd/benchmark/main.go -h
Usage of C:\...\main.exe:
-e string
ranna API endpoint
-loglevel int
logger level (default 4)
-n int
number of total requests (default 5)
-p int
parallel running requests (default 5)
-pp
pretty print results
-snippets string
snippets directory (default "./snippets")
All benchmarks ran with a build of the state of commit 120da47.
The current demo installation (ranna.zekro.de) is currently running on a low-spec 1C 2GB VPS. On this server, two ranna instances are running behind a traefik reverse proxy. https://public.ranna.zekro.de is publicly available and strongly rate limited. https://private.ranna.zekro.de is only accessable from whitelisted addresses and has no rate limits.
The following benchmarks were executed on this environment.
Used Parameters
| Endpoint | https://private.ranna.zekro.de |
| Snippets | 5 |
| # Requests | 100 |
| # Parallel Requests | 10 |
Results
| # Successful | 99 |
| % Successful | 99 |
| # Erroneous | 1 |
| % Erroneous | 1 |
| Average Request to Response Time | 7.5219s |
| Average Execution Time | 6.4011s |
Used Parameters
| Endpoint | https://private.ranna.zekro.de |
| Snippets | 5 |
| # Requests | 100 |
| # Parallel Requests | 50 |
Results
| # Successful | 48 |
| % Successful | 48 |
| # Erroneous | 52 |
| % Erroneous | 52 |
| Average Request to Response Time | 14.7281s |
| Average Execution Time | 6.7089s |
The following benchmarks now were made on a 16C 32GB VPS.
Used Parameters
| Endpoint | https://private.ranna.zekro.de |
| Snippets | 5 |
| # Requests | 100 |
| # Parallel Requests | 10 |
Results
| # Successful | 100 |
| % Successful | 100 |
| # Erroneous | 0 |
| % Erroneous | 0 |
| Average Request to Response Time | 1.5096s |
| Average Execution Time | 756ms |
Used Parameters
| Endpoint | https://private.ranna.zekro.de |
| Snippets | 5 |
| # Requests | 100 |
| # Parallel Requests | 50 |
Results
| # Successful | 100 |
| % Successful | 100 |
| # Erroneous | 0 |
| % Erroneous | 0 |
| Average Request to Response Time | 2.3727s |
| Average Execution Time | 1.0720s |
Used Parameters
| Endpoint | https://private.ranna.zekro.de |
| Snippets | 5 |
| # Requests | 1000 |
| # Parallel Requests | 100 |
Results
| # Successful | 915 |
| % Successful | 91.5 |
| # Erroneous | 85 |
| % Erroneous | 8.5 |
| Average Request to Response Time | 14.3220s |
| Average Execution Time | 2.6824s |




