Siege is an open source, multi-threaded regression test and benchmark utility.
It can stress test a single URL with a user defined number of simulated users, or it can read many URLs into memory and stress them simultaneously. Those users place the web server “under siege”.
Siege allows you to stress a web server with n number of users t number of times, where n and t are defined by the user. It records the duration time of the test as well as the duration of each single transaction. It reports the number of transactions, elapsed time, bytes transferred, response time, transaction rate, concurrency and the number of times the server responded with a status code 200.
Key Features
- Three modes of operation: regression (when invoked by bombardment), internet simulation and brute force.
- Supports the GET and POST directives.
- Cookies.
- Transaction logging.
- Basic authentication.
- Features are configurable on a per user basis.
- Support for most features of HTTP/1.1 protocol.
- Support HTTPS protocol (needs openssl installed).
Website: github.com/JoeDog/siege
Support:
Developer: Jeffrey Fulmer and contributors
License: GNU General Public License v2.0

Siege is written in C. Learn C with our recommended free books and free tutorials.
Related Software
| Web Server Benchmarking Tools | |
|---|---|
| Locust | Easy to use, scriptable and scalable performance testing tool |
| Apache JMeter | Load testing and performance measurement application |
| k6 | Modern load testing tool for developers and testers in the DevOps era |
| wrk | Modern HTTP benchmarking tool |
| Siege | HTTP regression testing and benchmarking utility |
| oha | CLI HTTP load generator with a real-time terminal user interface |
| hey | CLI load generator for benchmarking web applications and HTTP services |
| AutoCannon | Fast HTTP/1.1 benchmarking tool |
| Tsung | Multi-protocol distributed load testing tool |
| bombardier | Uses fasthttp instead of Go’s default http library, |
| ApacheBench | Apache (and other web servers) benchmark tool |
| Cassowary | Modern HTTP/S, intuitive & cross-platform load testing tool built in Go |
| Drill | HTTP load testing application written in Rust |
| Nighthawk | Layer 7 performance-characterisation and load-testing tool |
| httperf | HTTP load generator |
| FunkLoad | Web testing tool in the same spirit as Perl's WWW::Mechanize |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.