macOS
brew install wrklocal Homebrew formula metadata
sudo port install wrkMacPorts ports tree · net/wrk/Portfile · source: api.github.com
brew
HTTP benchmarking tool. Version 4.2.0 via Homebrew; verified 2026-06-25.
install
brew install wrklocal Homebrew formula metadata
sudo port install wrkMacPorts ports tree · net/wrk/Portfile · source: api.github.com
sudo apk add wrkAlpine Linux edge package indexes · wrk · source: dl-cdn.alpinelinux.org
sudo apt install wrkDebian stable package indexes · wrk · source: deb.debian.org
nix profile install nixpkgs#wrknixpkgs package indexes · pkgs/by-name/wr/wrk/package.nix · source: api.github.com
sudo zypper install wrkopenSUSE Tumbleweed package metadata · wrk · source: download.opensuse.org
overview
HTTP benchmarking tool
history
wrk is a high-performance HTTP benchmarking tool by Will Glozer. Its README describes it as a modern tool capable of generating significant load from a single multi-core CPU by combining a multithreaded design with scalable event notification systems such as epoll and kqueue.
The tool became a standard name in web-performance circles because it is small, fast, scriptable with LuaJIT, and easy to invoke in repeatable local benchmarks. It occupies the practical space between older ApacheBench-style smoke tests and heavier distributed load-testing systems.
The `wg/wrk` repository was created on 20 March 2012, and FreeBSD ports metadata shows wrk entering the FreeBSD ports tree on 1 August 2012. That early packaging matters: wrk quickly became a Unix-packaged benchmarking binary rather than only a GitHub project to build manually.
The 4.x line continued the same minimal command-line design. Git tag metadata places wrk 4.1.0 in January 2018 and 4.2.0 in February 2021. The README still emphasizes the core model: threads, connections, duration, optional latency reporting, custom headers, and optional LuaJIT scripting for request generation, response processing, and custom reporting.
wrk's adoption is visible in both package-manager coverage and GitHub popularity. The repository has accumulated tens of thousands of stars and thousands of forks, and the tool is packaged across common Unix-like ecosystems. FreeBSD has carried it under `benchmarks/wrk` since 2012.
Its niche adoption came from being able to generate large amounts of HTTP load from one machine, which made it attractive for web-server comparisons, local regression checks, and performance blog posts. The README's own example shows a 30-second run with 12 threads and 400 connections, a command shape that became a common shorthand for quick HTTP load tests.
The canonical invocation is `wrk -t12 -c400 -d30s URL`, where `-t` sets threads, `-c` sets open HTTP connections, and `-d` sets duration. Users add `--latency` for latency distributions, `-H` for headers, and `-s` for LuaJIT scripts when a static GET request is not enough.
wrk is best used for controlled benchmark comparisons rather than full production traffic modeling. The README warns that the client machine needs enough ephemeral ports and that per-request scripting or response callbacks reduce the amount of load the tool can generate.
wrk is one of the package-manager canonical HTTP benchmark binaries: short name, single executable, stable README usage, and enough performance to stress real services from a laptop or build host. That combination made it a frequent dependency of performance-minded developers even when it is not a library dependency of applications.
It is also historically important as a C/LuaJIT benchmark tool in a field crowded with language-specific clients. Package nerds care because it offers a compact, reproducible baseline for HTTP throughput and latency testing across machines and operating systems.
security posture
broad file, network, media, or database tool signal.
blue risk · medium confidence · tool
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
wrk | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
install metadata
| Package key | brew:wrk |
|---|---|
| Version | 4.2.0 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/wrk |
| Homepage | https://github.com/wg/wrk |
| Repository | https://github.com/wg/wrk |
| Upstream docs | https://github.com/wg/wrk#readme |
| License | LicenseRef-Homebrew-cannot-represent |
| Source archive | https://github.com/wg/wrk/archive/refs/tags/4.2.0.tar.gz |
| Last updated | 2026-06-25T13:38:12+02:00 |
| Pulse | updated |
| Dependencies | luajit, openssl@4 |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | wrk |
| Version Scheme | 0 |
| Revision | 2 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
wrk 4.1.0-4+b1
HTTP benchmarking tool
sudo apt install wrkwrk
nix profile install nixpkgs#wrkwrk 4.1.0-4build2
HTTP benchmarking tool
sudo apt install wrkwrk 4.2.0-r3
wrk is a modern HTTP benchmarking tool
sudo apk add wrkwrk-doc 4.2.0-r3
wrk is a modern HTTP benchmarking tool (documentation)
sudo apk add wrk-docwrk 4.2.0-2.3
Modern HTTP benchmarking tool
sudo zypper install wrkwrk
sudo port install wrksource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.