wrk
HTTP benchmarking tool that generates high load using multithreaded design and event notification systems
wrk is an HTTP benchmarking tool designed to generate significant load from a single multi-core CPU. It uses a multithreaded architecture combined with scalable event notification systems like epoll and kqueue to achieve high performance testing capabilities.
The tool supports customizable test parameters including thread count, concurrent connections, and test duration. A typical benchmark command like wrk -t12 -c400 -d30s http://127.0.0.1:8080/index.html runs 12 threads with 400 concurrent connections for 30 seconds, producing detailed statistics including latency distribution, requests per second, and transfer rates.
wrk includes optional LuaJIT scripting support for custom HTTP request generation, response processing, and reporting. This allows users to modify request methods, paths, headers, and bodies, or implement complex testing scenarios. The tool outputs comprehensive metrics including thread statistics, latency measurements with standard deviation, and throughput data.
The tool is primarily targeted at developers and system administrators who need to perform load testing on HTTP services. It's particularly useful for testing web servers, APIs, and other HTTP endpoints under various load conditions to assess performance characteristics and identify bottlenecks.
Alternatives & related tools
Nmap
Network scanner for host discovery, port scanning, service and OS detection, with a scripting engine (NSE) for extra checks.
ttyd
Command-line tool that shares a terminal command over the web, served via libuv and rendered in the browser with WebGL2, with SSL and basic auth.
weechat
Terminal-based chat client with modular plugin architecture and multi-protocol support, primarily for IRC
irssi
Terminal-based IRC client with modular architecture and support for multiple chat protocols
elinks
Text-based web browser with frame/table support, scripting, and extensive customization options
add a badge to your README
Maintain wrk? Show that it's featured on trmn. The badge links back to this page.
[](https://www.trmn.sh/tools/wrk?utm_source=badge)<a href="https://www.trmn.sh/tools/wrk?utm_source=badge"><img src="https://www.trmn.sh/badge/wrk.svg" alt="Featured on trmn" height="20"></a>