Siege — утилита для нагрузочного тестирования веб-серверов

Это утилита для нагрузочного тестирования веб-серверов. Она была создана для того чтоб дать разработчикам возможность проверить ресурсоёмкость своего кода в условиях, максимально приближенных к реальным. Так же Siege может имитировать обращения к сайту сразу нескольких пользователей. Это позволяет держать сервер как бы «под осадой» долгое время. Количество запросов, произведённых при «осаде», рассчитывается из общего количества пользователей и количества их обращений к серверу. Например 20 пользователей, обратившись по 50 раз, создают в общей сложности 1000 запросов. Результат, выводимый программой после тестирования, включает в себя время затраченное на проверку, общее количество переданной информации ( включая заголовки ), среднее время ответа сервера, его пропускную способность и число запросов на которые пришёл ответ с кодом 200. Эти данные формируются и выдаются при каждой проверке. Подробно они описываются ниже. Siege имеет 3 основных модели работы – режим регрессионного тестирования, режим имитации Интернета и режим грубой силы. Программа считывает порцию ссылок из конфигурационного файла и обращается к ним по очереди ( режим регрессионного тестирования ) или случайно ( имитация интернета ). Или же пользователь может указать один единственный адрес к которому будут производиться все обращения – режим грубой силы.

Параметры

-V, –version	VERSION, prints the version number.
-h, –help	HELP, prints this section.
-C, –config	CONFIGURATION, show the current config.
-v, –verbose
-g, –get	GET, pull down HTTP headers and display thetransaction. Great for application debugging.
-c, –concurrent=NUM	CONCURRENT users, default is 10
-i, –internet	INTERNET user simulation, hits URLs randomly.
-b, –benchmark	BENCHMARK: no delays between requests.
-t, –time=NUMm	TIMED testing where "m" is modifier S, M, or Hex: –time=1H, one hour test.
-r, –reps=NUM	REPS, number of times to run the test.
-f, –file=FILE	FILE, select a specific URLS FILE.
-R, –rc=FILE	RC, specify an siegerc file
-l, –log[=FILE]	LOG to FILE. If FILE is not specified, the default is used: /var/log/siege.log
-m, –mark="text"	MARK, mark the log file with a string.
-d, –delay=NUM	Time DELAY, random delay before each requst between 1 and NUM. (NOT COUNTED IN STATS)
-H, –header="text"	Add a header to request (can be many)
-A, –user-agent="text"	Sets User-Agent in request