awesome-repositories.com
Blog
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
wg avatar

wg/wrk

0
View on GitHub↗
40,327 stars·3,031 forks·C·12 views

Wrk

This project is a command-line HTTP load testing tool designed to measure the throughput and latency of web servers under high-concurrency conditions. It functions as a multi-threaded benchmarking engine that simulates thousands of simultaneous connections to evaluate server performance, identify bottlenecks, and determine capacity limits.

The tool distinguishes itself through a shared-nothing thread architecture that isolates state within individual threads to eliminate lock contention during high-frequency request generation. It utilizes a non-blocking event loop and low-latency socket polling to manage network connections with minimal overhead. Furthermore, it embeds a scripting engine that allows users to define custom request patterns, dynamic payloads, and response processing logic directly within the execution context.

Beyond basic throughput measurement, the tool supports infrastructure stress testing and performance regression analysis. It provides the capability to create complex request sequences, enabling developers to simulate varied traffic patterns and evaluate how backend services respond to extreme request volumes.

Features

  • Performance Testing - Generates high-concurrency traffic to measure the throughput and latency of web servers.
  • Kernel Networking - Utilizes system-level notification interfaces to monitor file descriptors efficiently and trigger immediate processing.
  • Benchmarks - Utilizes multiple CPU cores to simulate thousands of simultaneous connections against a target service.
  • Command Line Tools - Listed in the “Command Line Tools” section of the The Book Of Secret Knowledge awesome list.
  • Load Testing Tools - Multithreaded HTTP benchmarking tool with Lua scripting support.
  • HTTP Security - Modern HTTP benchmarking tool for generating high load.
  • Runtime Environments - Embeds a lightweight virtual machine to execute user-defined logic during the request lifecycle.
  • API Testing - Allows developers to define custom HTTP request patterns and response processing logic using embedded scripting.
  • Shared-Nothing Architectures - Isolates state within individual threads to eliminate lock contention and synchronization bottlenecks.

Star history

Star history chart for wg/wrkStar history chart for wg/wrk

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does wg/wrk do?

This project is a command-line HTTP load testing tool designed to measure the throughput and latency of web servers under high-concurrency conditions. It functions as a multi-threaded benchmarking engine that simulates thousands of simultaneous connections to evaluate server performance, identify bottlenecks, and determine capacity limits.

What are the main features of wg/wrk?

The main features of wg/wrk are: Performance Testing, Kernel Networking, Benchmarks, Command Line Tools, Load Testing Tools, HTTP Security, Runtime Environments, API Testing.

What are some open-source alternatives to wg/wrk?

Open-source alternatives to wg/wrk include: tsenart/vegeta — Vegeta is an HTTP load testing tool and library designed to measure the performance and stability of web services. It… rakyll/hey — This project is a command-line utility designed for HTTP load testing and network stress testing. It functions as a… giltene/wrk2 — wrk2 is a high-performance HTTP benchmarking tool and constant throughput load generator. It is designed to measure… codesenberg/bombardier — Bombardier is a concurrent HTTP load generator and performance benchmarking tool written in Go. It functions as a… loadimpact/k6 — k6 is a developer-centric load testing suite and command-line load generator designed for network performance… intuit/karate — Karate is an end-to-end testing framework and API test automation tool used to validate REST and SOAP APIs, drive…

Open-source alternatives to Wrk

Similar open-source projects, ranked by how many features they share with Wrk.
  • tsenart/vegetatsenart avatar

    tsenart/vegeta

    25,070View on GitHub↗

    Vegeta is an HTTP load testing tool and library designed to measure the performance and stability of web services. It functions as a command-line utility, a programmable package for integration into other applications, and a distributed load generator capable of splitting request rates across multiple machines. The tool is distinguished by its constant-rate request scheduler, which dispatches requests at a fixed frequency regardless of target response times. It employs lazy target streaming to maintain low memory usage during large tests and uses a binary-encoded storage format to minimize di

    Gobenchmarkinggohttp
    View on GitHub↗25,070
  • rakyll/heyrakyll avatar

    rakyll/hey

    19,772View on GitHub↗

    This project is a command-line utility designed for HTTP load testing and network stress testing. It functions as a benchmarking tool that generates high volumes of concurrent traffic to evaluate the performance, reliability, and throughput capacity of web applications and APIs under sustained load. The tool allows for precise control over traffic generation by enabling users to configure request parameters, including custom headers, authentication credentials, and specific HTTP methods. It manages load through a worker-pool system that regulates request frequency, allowing for both time-boun

    Go
    View on GitHub↗19,772
  • codesenberg/bombardiercodesenberg avatar

    codesenberg/bombardier

    6,797View on GitHub↗

    Bombardier is a concurrent HTTP load generator and performance benchmarking tool written in Go. It functions as a latency distribution analyzer and benchmarking utility designed to measure the throughput and response speed of HTTP services by simulating high-volume request loads. The tool provides specific capabilities for TLS benchmarking, supporting client certificate authentication and the ability to bypass server certificate verification. It distinguishes itself through the use of a token-bucket algorithm for precise request rate limiting and the use of templates to export benchmark resul

    Gobenchmarkingbombardiercli
    View on GitHub↗6,797
  • giltene/wrk2giltene avatar

    giltene/wrk2

    4,600View on GitHub↗

    wrk2 is a high-performance HTTP benchmarking tool and constant throughput load generator. It is designed to measure server stability and throughput by sending a fixed number of requests per second, functioning as a high-resolution latency profiler and a Lua-scriptable performance tester. The tool distinguishes itself through a scriptable interface that uses a high-performance just-in-time compiler to define complex request formats and custom response reporting logic. It employs high-resolution histograms to capture precise response time distributions and high-percentile latency data. The pro

    C
    View on GitHub↗4,600
See all 30 alternatives to Wrk→