30 open-source projects similar to joedog/siege, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Siege alternative.
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
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
Ali is an HTTP load testing tool and traffic generator used to measure system performance and stability by sending high volumes of requests to a target URL. It functions as a performance metrics exporter and real-time visualizer, simulating client behavior through configurable request bodies, custom headers, and HTTP/2 support. The project provides real-time performance monitoring via interactive charts that plot latency and request percentiles as data is collected. It identifies system bottlenecks through a combination of live performance plotting and the exportation of raw data points and a
Boom is a Go-based HTTP load generator and stress testing tool. It functions as a modern alternative to the ApacheBench utility, designed to send high volumes of requests to web servers to measure performance and stability. The tool focuses on identifying the breaking point of web services and APIs by simulating heavy traffic loads. It is used for benchmarking how many requests per second a server can handle before experiencing increased response times or errors. Its capabilities cover web server stress testing and API performance analysis to identify stability issues and hardware bottleneck
oha is a command line HTTP load testing and benchmarking utility. It functions as a latency analysis tool and performance monitor, sending high volumes of requests to web servers to measure stability and identify performance bottlenecks. The tool features a terminal user interface that displays real-time latency statistics and request animations during active tests. It includes a mechanism to correct for coordinated omission, ensuring that response time percentiles and latency distributions are reported accurately. Its capabilities cover HTTP load generation, traffic simulation via randomize
Autocannon is a Node.js HTTP load tester and benchmarking utility used to measure server throughput and latency. It functions as a high-performance request generator designed for stress testing web servers and APIs to analyze request-per-second capacity. The tool operates as a distributed HTTP load generator capable of aggregating results from multiple machines. It also functions as a HAR file replay tool, allowing users to reproduce specific network traffic patterns by replaying recorded HTTP archive files. The project covers broad capability areas including HTTP traffic simulation through
Plow is a suite of utilities used for generating HTTP load, measuring network performance, and visualizing live metrics. It functions as both an HTTP load generator and a benchmarking tool that measures latency and throughput by sending concurrent requests at configurable rates. The project includes a Socks5 and HTTP proxy client, allowing benchmark traffic to be routed through proxies to test services located behind network gateways. It also provides a real-time performance dashboard via web and terminal interfaces to visualize live metrics and latency histograms during active sessions. The
Apache JMeter is a Java-based performance testing tool and multi-protocol traffic simulator used to analyze the stability and scalability of servers and networks. It functions as a distributed load testing framework that coordinates remote worker nodes from a single controller to generate high volumes of concurrent traffic. The project is distinguished by its ability to simulate traffic across diverse backend systems, including HTTP, JDBC, LDAP, JMS, FTP, and TCP. It provides a headless command-line interface for automated execution and a reporting system that transforms raw sample logs into
This project is a Node.js web scraping framework designed to automate data extraction through a programmatic workflow of requests, parsing, and document interaction. It functions as a headless web crawler, an HTTP request manager, and a DOM parser and extractor. The framework distinguishes itself by combining a JavaScript execution engine to interact with dynamic content and a hybrid selection system that utilizes both CSS and XPath selectors. It includes specialized middleware for proxy rotation and cookie-jar session management to maintain authenticated states and manage automated traffic.
HttpRunner is a multi-protocol network testing framework designed for automating functional and regression tests of HTTP interfaces. It functions as a multi-protocol network tester supporting HTTP/1.1, HTTP/2, WebSocket, TCP, and RPC to validate diverse communication patterns. The project includes specialized engines for API performance testing, data-driven testing, and a test case generator that converts HAR files, curl commands, and Swagger definitions into executable scripts. The framework is distinguished by its ability to separate test logic from business data via a data-driven execution
This project is a multi-protocol API simulation and mocking system designed to replace external dependencies during development and testing. It provides an API mocking server, a network traffic proxy, and specialized simulators for language model services and identity providers. The system distinguishes itself through deep AI simulation capabilities, including the emulation of language model providers and Model Context Protocol servers using JSON-RPC 2.0. It supports multi-turn conversational logic, state tracking for AI chat APIs, and the visualization of agent execution through call graphs
This project is a performance benchmarking framework and network protocol stress tester designed to evaluate system stability under high-concurrency conditions. It functions as a command-line utility that simulates massive volumes of simultaneous requests to identify infrastructure bottlenecks and verify service reliability. The tool distinguishes itself through its protocol-agnostic orchestration, which allows for load testing across diverse standards including HTTP, WebSocket, gRPC, and Radius. It supports complex request configurations, enabling users to inject custom headers, binary data,
Fortio is a performance testing tool written in Go that generates constant request rates to measure latency histograms and response percentiles. It functions as a network performance benchmarker for analyzing system performance across HTTP and gRPC endpoints, and includes a specialized HTTP echo server for mirroring requests. The project distinguishes itself through a web-based HTTP load testing API used for triggering asynchronous tests and visualizing result data through graphs. It also provides server behavior simulation, allowing the echo server to inject artificial delays and vary respon
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
Gor is a set of specialized utilities for recording, replaying, and shadowing network traffic to validate system behavior under real-world conditions. It functions as an HTTP traffic recording tool, a network traffic capture engine, and a system for duplicating live production traffic. The project provides capabilities for recording real-time HTTP network traffic and storing it for later playback or analysis. It can duplicate live production network traffic and redirect it to a staging environment in real time, or replay recorded network requests against a target environment to validate syste
Artillery is a Node.js load testing tool and performance testing framework used to generate high-volume synthetic traffic. It functions as a distributed load generator capable of spawning traffic from cloud infrastructure and Kubernetes clusters to simulate massive user loads. The project distinguishes itself through its ability to execute browser-based load tests using headless browsers to measure client-side rendering and real user journeys. It also serves as a protocol testing framework that validates multiple communication standards and real-time protocols through complex, multi-step tran
Beeswithmachineguns is a distributed load testing framework and cloud infrastructure orchestrator. It functions as an HTTP traffic generator that provisions fleets of virtual servers to simulate massive concurrent user traffic across multiple cloud regions to stress test web applications. The tool specifically manages the lifecycle of AWS EC2 micro instances, automating the provisioning of servers across different geographic zones and the subsequent termination of all active resources to prevent unnecessary billing costs. The system coordinates concurrent traffic scheduling and distributed r
httpstat is a command-line utility for executing HTTP requests and analyzing network timing, response metadata, and connection performance. It serves as a diagnostic tool and debugger for inspecting HTTP headers and response bodies through a terminal interface. The tool focuses on performance analysis by measuring the latency of secure web requests, including the overhead of the TLS handshake and general connection timing. It provides color-coded output to visually separate request and response metadata for human analysis. The utility covers API integration testing and network troubleshootin
Gatling is a load testing framework and traffic generation engine used to measure response times and error rates under heavy load. It functions as an as-code testing library, allowing users to define high-volume traffic simulations and performance tests through programming languages rather than graphical interfaces. The system enables multi-language load simulation and the ability to model concurrent user traffic to identify infrastructure bottlenecks and stability limits. It supports a test-as-code workflow, where version-controlled scripts are integrated into build pipelines as performance
k6 is a performance testing framework used to measure the scalability and stability of network services and APIs. It functions as a JavaScript load testing tool that uses a Go engine to simulate concurrent user traffic. The tool enables the enforcement of service level objectives by comparing response time percentiles against quantitative performance thresholds. It also operates as a performance regression tool for continuous integration pipelines and a browser performance testing tool that executes scripts within a bundled headless browser instance. Its capabilities cover workload scenario
This is a desktop HTTP client application used for constructing, sending, and analyzing HTTP and GraphQL requests. It provides a graphical interface for API development and testing, including a dedicated GraphQL client with schema-driven autocomplete and validation. The project features an integrated AI assistant that generates API requests from natural language prompts. It supports a complex organization system of spaces and collections with hierarchical authentication inheritance and recursive variable resolution for dynamic request values. The tool covers a broad range of capabilities, in
k6 is a developer-centric load testing suite and command-line load generator designed for network performance validation. It functions as a JavaScript load testing tool that utilizes a Go-based runtime engine to simulate concurrent user traffic and validate API responses across HTTP, gRPC, and WebSockets. The project distinguishes itself by using code rather than a graphical interface to define workload scenarios and performance thresholds. It features a pluggable protocol architecture and an extension ecosystem that allows for the addition of custom protocols and specialized testing capabili
Thunder Client is a REST API client extension for VS Code that functions as an HTTP request manager, testing tool, and mocking workspace. It allows users to send requests, organize them into collections, and manage API configurations directly within the editor. The project distinguishes itself through a command-line interface for executing automated test suites in CI/CD pipelines and a Git-based synchronization system for sharing request collections and environment configurations across teams. It also incorporates artificial intelligence to automate the conversion of API scripts during migrat
Upptime is a monitoring system that uses GitHub Actions to check endpoint availability and track response times. It functions as an HTTP availability checker and a static status page generator, converting uptime data into a branded website hosted on GitHub Pages. The project integrates a GitHub Issues incident manager to automatically create and close tracking tickets for service outages and recovery. It provides a JSON status badge provider to expose uptime percentages and response times for use in external visual badges. The system covers website uptime monitoring and service performance t
Swell is an API development and testing client designed for interacting with modern network protocols, executing GraphQL operations, and running local mock servers. It provides a unified interface for connecting to endpoints served over HTTP/2, WebSockets, Server-Sent Events, gRPC, tRPC, and WebRTC, enabling live messaging, monitoring, and debugging. The platform includes a concurrent load testing engine that spawns parallel worker threads to evaluate endpoint performance under heavy traffic, alongside a local mock server engine for simulating backend responses during frontend development. It
Karate is an end-to-end testing framework and API test automation tool used to validate REST and SOAP APIs, drive browser interactions, and measure system performance. It functions as a unified solution for executing automated tests across both API backends and web frontends. The framework utilizes a custom domain specific language and Gherkin-style feature mapping to define requests and assertions. It includes an API mocking server to simulate backend responses, enabling development and integration testing without live dependencies. The tool covers a broad range of functional testing catego
Douyin-Bot is a Python-based automation tool designed for interacting with Douyin accounts through automated likes, follows, and comments. It functions as a computer vision social bot that uses face recognition and image analysis to filter profiles based on visual criteria. The project distinguishes itself by using aesthetic content filtering to trigger social actions only when a user meets a specified beauty threshold. To reduce the risk of account bans, it incorporates account safety management that mimics human behavior through randomized delay scheduling. The framework covers a broad ran
Helicone is an AI gateway and observability platform designed to intercept, manage, and monitor interactions with large language models. By acting as a reverse-proxy, it provides a centralized layer for routing requests across multiple AI providers, allowing developers to maintain consistent application logic while gaining deep visibility into model performance, usage, and costs. The platform distinguishes itself through a robust suite of traffic management and prompt engineering tools. It enables policy-driven control, including automatic failover between providers, rate limiting, and edge-b
ethr is a command line network diagnostic tool and performance analyzer designed to measure throughput, latency, and packet loss across TCP, UDP, and ICMP protocols. It functions as a multi-threaded network throughput tester and a diagnostic utility for analyzing connection health between client and server endpoints. The project differentiates itself through specialized diagnostics such as TCP retransmission monitoring and bidirectional path analysis to identify asymmetric performance differences. It provides the ability to evaluate the overhead of encrypted HTTPS connections and enforce spec
testssl.sh is a network security tool and SSL/TLS security scanner used to audit server configurations. It functions as a diagnostic utility that validates supported ciphers and protocols to identify cryptographic vulnerabilities and flaws in encrypted communication. The tool is available as both a command-line utility and a dockerized security scanner, allowing for execution in isolated environments without the need for local dependency installation. Its capabilities cover SSL configuration auditing and TLS server security analysis. The system exports scan results into structured reports a