Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
utils:siege [2016/03/30 09:08] – [Параметры] mirocowutils:siege [Дата неизвестна] (текущий) – внешнее изменение (Дата неизвестна) 127.0.0.1
Строка 1: Строка 1:
-{{tag>utils server ab test}}+{{tag>utils server ab test networks networking network}}
  
 ====== Siege — утилита для нагрузочного тестирования веб-серверов ====== ====== Siege — утилита для нагрузочного тестирования веб-серверов ======
Строка 11: Строка 11:
 </code> </code>
  
 +
 +===== Пример =====
 +
 +<code>
 +$ siege -b -c 100 -r 10 http://www.host.ru/
 +</code>
 +
 +  ransactions:                     415 hits
 +  Availability:                 100.00 %
 +  Elapsed time:                   8.34 secs
 +  Data transferred:              15.67 MB
 +  Response time:                  1.75 secs
 +  Transaction rate:              49.76 trans/sec
 +  Throughput:                     1.88 MB/sec
 +  Concurrency:                   87.21
 +  Successful transactions:         415
 +  Failed transactions:               0
 +  Longest transaction:            7.13
 +  Shortest transaction:           0.62
 +
 +  * Transactions – количество обращений к серверу. В примере это число высчитывается из 100 пользователей [ -c100 ] запустивших по 10 обращений [ -r10 ], что в общей сумме составляет 1000.
 +  * Elapsed time – общая продолжительность тестирования. Она высчитывается начиная с первого обращения к серверу и кончая получением ответа на последний запрос. В примере тест занял 8.34 секунд.
 +  * Data transferred – суммарное количество данных переданное всеми имитируемыми пользователями. Оно включает в себя как тела запросов, так и их заголовки.
 +  * Response time – среднее время за которое сервер успел ответить клиенту.
 +  * Transaction rate – среднее число обращений которые сервер успел обработать за секунду. Оно получается путём деления общего числа запросов на затраченное время.
 +  * Throughput – среднее число данных передаваемых ежесекундно от сервера к пользователям.
 +  * Concurrency – количество одновременных подключений при которых сервер отвечает без задержек.
 +  * Successful transactions – количество запросов на которые сервер ответил кодом меньше 400.
 ===== Параметры ===== ===== Параметры =====
  
 ^     ^ ^     ^
-|-V, --version      |VERSION, prints the version number.| 
-|-h, --help              |HELP, prints this section.| 
 |-C, --config            |Показывает текущую конфигурацию. Siege считывает настройки и выводит их содержимое. Вы можете их менять редактируя файл $HOME/.siegerc. Если такого файла у Вас нет, следует запустить утилиту siege.config, которая его сгенерирует.| |-C, --config            |Показывает текущую конфигурацию. Siege считывает настройки и выводит их содержимое. Вы можете их менять редактируя файл $HOME/.siegerc. Если такого файла у Вас нет, следует запустить утилиту siege.config, которая его сгенерирует.|
-|-v, --verbose           |VERBOSE, prints notification to screen.+|-v, --verbose           |Выводит отладочные сообщения.|
 |-g, --get               |Совершает обращение к указанной ссылке. Получает заголовки с сервера и выводит их на экран. Отличный инструмент для точечного тестирования..| |-g, --get               |Совершает обращение к указанной ссылке. Получает заголовки с сервера и выводит их на экран. Отличный инструмент для точечного тестирования..|
 |-c, --concurrent=NUM    |Количество имитируемых пользователей. по умолчанию установлено 10| |-c, --concurrent=NUM    |Количество имитируемых пользователей. по умолчанию установлено 10|
 |-i, --internet          |Эта опция используется с конфигурационным файлом содержащим множество ссылок.| |-i, --internet          |Эта опция используется с конфигурационным файлом содержащим множество ссылок.|
-|-b, --benchmark         |BENCHMARK: no delays between requests.|+|-b, --benchmark         |Отключает задержки между запросами.|
 |-t, --time=NUMm         |Время, за которое должно пройти тестирование. Пример: -t3600S, -t60M, -t1H| |-t, --time=NUMm         |Время, за которое должно пройти тестирование. Пример: -t3600S, -t60M, -t1H|
-|-r, --reps=NUM          |REPS, number of times to run the test.|+|-r, --reps=NUM          |Устанавливает количество повторений теста.|
 |-f, --file=FILE         |Конфигурационный файл содержащий ссылки (SIEGE_HOME/etc/urls.txt).| |-f, --file=FILE         |Конфигурационный файл содержащий ссылки (SIEGE_HOME/etc/urls.txt).|
 |-R, --rc=FILE           |RC, specify an siegerc file| |-R, --rc=FILE           |RC, specify an siegerc file|
Строка 29: Строка 55:
 |-m, --mark="text"       |Эта опция позволяет указать выражение которым будут разделяться записи о разных тестированиях в лог-файле.| |-m, --mark="text"       |Эта опция позволяет указать выражение которым будут разделяться записи о разных тестированиях в лог-файле.|
 |-d, --delay=NUM         |Эта опция указывает задержку между обращениями имитируемых пользователей к серверу. По умолчанию задержка происходит от 1 секунды до 3.| |-d, --delay=NUM         |Эта опция указывает задержку между обращениями имитируемых пользователей к серверу. По умолчанию задержка происходит от 1 секунды до 3.|
-|-H, --header="text"     |Add a header to request (can be many)+|-H, --header="text"     |Устанавливает параметры header в запросе HTTP
-|-A, --user-agent="text" |Sets User-Agent in request|+|-A, --user-agent="text" |Формирует User-Agent для запроса|
  
 ===== Конфигурационный файл ===== ===== Конфигурационный файл =====
Строка 36: Строка 62:
 Начиная с версии 2.00 Siege поддерживает конфигурационные файлы в которых Вы можете хранить часто-используемые команды. Это может помочь при большом количестве тестирований с почти одними и теми же настройками. Данный файл называется .seigerc и располагается в домашней директории пользователя установившего Siege. Если этого файла там нет (например устанавливали программу не Вы) то можно воспользоваться утилитой siege.config для его создания. Внутри файла находятся различные директивы с комментариями к ним. Редактирование Вы можете проводить с использованием любого текстового редактора. Начиная с версии 2.00 Siege поддерживает конфигурационные файлы в которых Вы можете хранить часто-используемые команды. Это может помочь при большом количестве тестирований с почти одними и теми же настройками. Данный файл называется .seigerc и располагается в домашней директории пользователя установившего Siege. Если этого файла там нет (например устанавливали программу не Вы) то можно воспользоваться утилитой siege.config для его создания. Внутри файла находятся различные директивы с комментариями к ним. Редактирование Вы можете проводить с использованием любого текстового редактора.
  
-==== Формат передаваемых URL ====+===== Формат передаваемых URL =====
  
 Siege понимает следующий формат ссылок: Siege понимает следующий формат ссылок:
Строка 45: Строка 71:
 “siege -u shemp” произведёт обращение к адресу shemp.домен.net/index.shtml. Если Вы хотите чтоб Siege работал с https-сервером то нужно указать дополнительно ещё и протокол. Таким образом команда “siege -u shemp” заставит программу обращаться по адресу shemp.yourdomain.net/index.shtml. “siege -u shemp” произведёт обращение к адресу shemp.домен.net/index.shtml. Если Вы хотите чтоб Siege работал с https-сервером то нужно указать дополнительно ещё и протокол. Таким образом команда “siege -u shemp” заставит программу обращаться по адресу shemp.yourdomain.net/index.shtml.
  
-==== Файл с сылками ====+===== Файл с сылками =====
  
 Перед тем как запустить регрессионный тест или режим имитации интернета Вам нужно передать программе список проверяемых адресов. Для этого поместите их в файл SIEGE_HOME/etc/urls.txt. В нём адреса должны располагаться по одному на строку: Перед тем как запустить регрессионный тест или режим имитации интернета Вам нужно передать программе список проверяемых адресов. Для этого поместите их в файл SIEGE_HOME/etc/urls.txt. В нём адреса должны располагаться по одному на строку:
  
 +<code>
 +host.com/script.php
 +host.com/script.php
 +host.com/cgi-bin/script.pl?first=bart&last=simpson
 +host.com/cgi-bin/script.pl POST name=homer
 +host.com/script.php POST word=doh!&scope=ALL
 +</code>
 +
 +===== Log File =====
 +
 +Когда Siege запускается с включенной опцией логирования [-l/--log], программа заносит всю выводимую информацию в PREFIX/var/siege.log, где PREFIX – установочная директория Siege ( смотрите файл INSTALL ). В лог-файл пишется всё что выводится программой на экран в стандартном режиме. Информация при записи разделяется запятыми для быстрого импорта в другие форматы.
 +Для разделения результатов разных проверок имеется опция -m “текст”/–mark=”текст”. Она помещает указанное сообщение в лог-файл перед началом сканирования чтоб Вы смогли быстро найти его результат. Например, если Вы тестируете ссылки по протоколам http и https, Вы можете оставлять в логах пометки типа “start HTTPS testing”. Если Вы используйте опцию -m/–mark то параметр -l/–log использовать не обязательно.