Перевёл: Кузьмин Антон
Дата: 16-04-2009
AB — это утилита для нагрузочного тестирования веб-серверов Apache. Он специально создан для того что бы Вы могли проанализировать стойкость своего веб-сервера к большим нагрузкам. В частности он может показать сколько одновременных запросов сервер может выдержать.
Синтаксис запуска
ab [ -A логин:пароль ] [ -c кол-во_параллельных_запросов ] [ -C имя_cookie=значчение ] [ -d ] [ -e csv-файл ] [ -g gnuplot-файл ] [ -h ] [ -H заголовок ] [ -i ] [ -k ] [ -n кол-во_запросов ] [ -p POST-файл ] [ -P proxy-логин:пароль ] [ -q ] [ -s ] [ -S ] [ -t лимит_времени ] [ -T content-type ] [ -v режим_вывода_отчётности] [ -V ] [ -w ] [ -x параметры_тега_<table> ] [ -X proxy[:port] ] [ -y параметры_тега_<tr> ] [ -z параметры_тега_<td> ] [http://]хост[:порт]/путь
Допустимые опции
-A логин:пароль
Опция позволяет включить поддержку аутентификации. Имя пользователя и пароль разделяются одиночным символом «:» и при передаче кодируются по алгоритму base64. Строка с данными авторизации посылается серверу всегда, вне зависимости от его требований (например ответе «401 требуется авторизация»)
-c количество
Количество запросов посылаемых параллельно за один раз. По умолчанию этот параметр равен единице.
-C имя-cookie=значение
Устанавливает строку Cookie в заголовке запроса. Значение этого параметра должно передаваться в виде «имя=значение». Параметр может быть использован несколько раз.
-d
Не показывать таблицу соотношения количества запросов к времени их выполнения. (Поумолчанию она выводится в конце отчёта).
-e имя-csv-файла
Записывает в CSV-виде (значения разделённые запятой) данные о времени выполнения каждого запроса. Опция будет более полезной если Вы создаёте отчёт в виде 'gnuplot'-файла.
-g имя-gnuplot-файла
Записать всю полученную информацию в файл в формате 'gnuplot' или TSV (значения разделённые tab`ом) . Файл может быть легко импортировав в следующие пакеты: Gnuplot, IDL, Mathematica, Igor или даже Excel. Названия колонок помещаются в самой первой строке файла.
-h
Показ справки.
-H заголовок
Добавляет какое-либо поле в заголовок запроса. Значение этого параметра должно быть в виде правильного заголовочного поля и значения, отделённого двоеточием (например "Accept-Encoding: zip/zop;8bit").
-i
Использовать HEAD-запросы вместо GET.
-k
Использовать HTTP KeepAlive. То есть производить множество запросов в рамках одной HTTP-сессии. По умолчанию эта опция отключена.
-n количество запросов
Количество запросов которое будет отправлено при тестировании. По умолчанию этот параметр равен единице, что может использоваться для проверки работоспособности AB и доступности для него сервера.
-p путь-к-файлу-с-POST-данными
Путь к файлу содержащему данные для POST-запроса.
-P имя-пользователя:пароль
Включение авторизации для Proxy-серверов. Логин и пароль разделяются одиночным двоеточием («:») и посылаются в виде закодированной base64-строки. Строка посылается всегда, вне зависимости от требований сервера (например ответа с заголовком «407 требуется авторизация для proxy-сервера»).
-q
Когда при тестировании требуется отправить больше 150 запросов AB показывает подробный ход их отправки. Как только отправляется 10% из них (минимальный порог — 100 запросов) то программа выводит соответствующее уведомление. Данная опция отключает этот вывод.
-s
Если AB собран с поддержкой SSL (это можно увидеть вызвав утилиту с опцией -h) то эта опция указывает ему использовать HTTPS вместо HTTP. Функция сейчас находится в стадии тестирования, поэтому мы не рекомендуем её использовать.
-S
Не показывать информацию об ошибках, предупреждениях и отклонениях в поведении. (В точном переводе этой опции я не уверен. Обратитесь пожалуйста к официальной документации. - п.п)
-t timelimit
Максимальное время проведения тестирования. Например эту опцию можно использовать с указанием количества запросов в 50000. За указанное время программа постарается произвести заданное количество обращений. По умолчанию этот лимит не устанавливается.
-T content-type
Поле «Content-type» при отправке POST-запросов.
-v уровень-вывода-отчётов
Устанавливает уровень вывода отчётности. При уровне 4 выводится информация о заголовках. При уровне 3 - код ответа (404, 200, и т.д.). При уровне 2 - информация о различных предупреждениях/ошибках и т.д.
-V
Показать номер текущей версии и выйти.
-w
Печатать ответ в виде HTML-таблицы. По умолчанию таблица состоит из 2 колонок и имеет белый фон.
-x <table>-параметры
Строка параметров для тега <table>. Они вставляются в тег следующим образом - «<table здесь >».
-X адрес-прокси[:порт]
Использовать PROXY-сервер
-y <tr>-параметры
Строка с параметрами для тега <tr> (аналогично -х).
-z <td>-параметры
Строка параметров для тега <td> (аналогично -х).
Известные баги
В некоторых местах программы имеются ограничения на длину данных поступающих от пользователя (к примеру, в виде параметров), сервера (например в виде ответа) и прочих внешних источников. Проблемы от этого встречаются редко, но возможно коснутся и Вас.
Программа не поддерживает HTTP/1.x полностью; Она понимает лишь несколько стандартных форм ответов. Использование strstr(3) влечёт за собой определённые проблемы, то есть может сложится такая ситуация что будет замерено не время работы сервера, а время работы AB. (В точном переводе этой опции я не уверен. Обратитесь пожалуйста к официальной документации. - п.п)
Комментариев нет:
Отправить комментарий