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.
Explore our carefully curated directory of recommended free and open source software, covering every major software category.The directory forms part of our extensive collection of articles for Linux enthusiasts. It includes hundreds of detailed reviews, together with free and open source alternatives to proprietary software from companies such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. LinuxLinks also covers interesting projects worth exploring, Linux-compatible hardware, free programming books and tutorials, and much more. Know a useful free and open source Linux application that we haven’t covered? Tell us about it using our submission form. |


Please read our Comment Policy before commenting.