В сети нашел интересную утилиту для нагрузочного тестирования веб-сервера, которая называется Siege. Одной из особенностей Siege является возможность имитировать обращения к сайту сразу нескольких пользователей.
Для того, что установить данный пакет, необходимо ввести следующую команду:
apt-get install siege
Siege имеет три основных модели работы:
1. Режим регрессионного тестирования — считывается порция ссылок из конфигурационного файла и к ним по очереди происходит обращение.
2. Режим имитации Интернета — тоже, что и в первом пункте, однако обращение происходит случайным образом.
3. Режим грубой силы — указывается один адрес, к которому производятся все обращения.
Для того, чтобы смоделировать третий пункт, достаточно в консоли написать следующее:
siege -c NUM1 -r NUM2 -b site.ru
где параметры — это:
-c NUM1 — задает количество имитируемых пользователей
-r NUM2 — задает количество имитируемых обращений
К примеру, 10 пользователей, обратившись по 20 раз, создают 200 запросов.
После того, как Siege произведет имитацию запросов, на экран консоли выведится стастика, которая включает в себя:
Transactions — количество обращений к серверу.
Elapsed time — общая продолжительность тестирования, которая высчитывается начиная с первого обращения к серверу и кончая получением ответа на последний запрос.
Data transferred — суммарное количество данных, переданных всеми имитируемыми пользователями.
Response time — среднее время, за которое сервер успел ответить клиенту.
Transaction rate — среднее число обращений, которые сервер успел обработать за секунду. Формируется путём деления общего числа запросов на затраченное время.
Throughput — среднее число данных, передаваемых ежесекундно от сервера к клиентам.
Concurrency — количество одновременных подключений, при которых сервер отвечает без задержек.
Successful transactions — количество запросов, на которые сервер ответил кодом, меньше 400.
Материалы по теме: ссылка.