Siege reports the total number of hits recorded, bytes transferred, response time, concurrency, and return status. Most features are configurable with command line options which also include default values to minimize the complexity of the program's invocation.
Siege allows you to stress a web server with 'n' number of users for '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.
Siege reports the number of transactions, elapsed time, bytes transferred, response time, transaction rate, concurrency and the number of times the server responded OK, that is status code 200. Siege was designed and implemented by Jeffrey Fulmer in his position as Webmaster for Armstrong World Industries.
The latest version of siege can be obtained via anonymous ftp: siege-latest.tar.gz
Extract the source code using command: tar -zxvf siege-latest.tar.gz
--with-ssl=/some/dir -- where dir is where you installed ssl, this flag is used to enable https protocol.
$ make uninstall (if you have an older version installed in PREFIX)
$ make install
Using: Here is the simple example of using siege
# siege --concurrent=50 --internet --benchmark --time=20m http://www.someurl.com/index.html
Check siege man pages for more options