A benchmark suite which measures the requests per second and latency on average for several web servers.
We wanted to prepare some benchmarks to have a general idea about the SWS performance path over time as well as an excuse to improve/optimize SWS in that regard.
- Note that this is a rough reference about some particular performance aspects (requests per second and latency on average) so take it at your own risk.
- Be also aware that this benchmark disables in-memory cache for some servers intentionally since SWS doesn't provide such a feature yet.
In the case of some web servers providing that by default then it gets disabled explicitly. See for example binserve's author comment in this context. - Have also in mind that some web servers follow approaches like Nignx's hybrid disk‑and‑memory cache strategy which could work in its favor.
Change URL
env with the corresponding server URL to load test and generate the wrk metrics.
# NOTE: the load test is per server
SERVER="sws" URL="http://localhost" make wrk
# wrk -c 500 -t 12 -d 10s --latency http://localhost
After that, wrk
will save two files (JSON/CSV) on disk with the resulting metrics.
For more details about settings see Makefile
- OS: Arch Linux
- Kernel: 6.1.11-arch1-1 (64 bits)
- Processor: 4 × Intel® Core™ i7-6500U
- RAM: 8 GiB
Of course, if you find any issue or remark/improvement to do please don't hesitate to file an issue or send a Pull request.