Apache. Документация на русском


Разделы:   1    2    3    4    5    6    7      8      9    10    11    12    13    14    15    16  

Раздел 8. HTTP-сервер Apache и вспомогательные программы

Пункты:   63      64      65    66    67    68    69    70    71    72    73    74    75    76    77    78    79  

 <         > 
  RU            EN  

Пункт 64. Страница руководства: ab

ab — это инструмент для сравнительного анализа вашего сервера Apache Hypertext Transfer Protocol (HTTP). Он разработан, чтобы дать вам представление о том, как работает ваша текущая установка Apache. Это особенно показывает, сколько запросов в секунду способна обслуживать ваша установка Apache.

Синопсис

ab [ -A auth-username:password ] [ -b windowsize ] [ -B local-address ] [ -c concurrency ] [ -C cookie-name=value ] [ -d ] [ -e csv-file ] [ -f protocol ] [ -g gnuplot-file ] [ -h ] [ -H custom-header ] [ -i ] [ -k ] [ -l ] [ -m HTTP-method ] [ -n requests ] [ -p POST-file ] [ -P proxy-auth-username:password ] [ -q ] [ -r ] [ -s timeout ] [ -S ] [ -t timelimit ] [ -T content-type ] [ -u PUT-file ] [ -v verbosity] [ -V ] [ -w ] [ -x <table>-attributes ] [ -X proxy[:port] ] [ -y <tr>-attributes ] [ -z <td>-attributes ] [ -Z ciphersuite ] [http[s]://]hostname[:port]/path

Параметры

-A auth-username:password
Предоставьте серверу учетные данные BASIC Authentication. Имя пользователя и пароль разделяются одинарной точкой : и отправляются по кабелю в кодировке base64. Строка отправляется независимо от того, нужна ли она серверу ( т. е . отправил ли он запрос 401 на проверку подлинности).
-b windowsize
Размер буфера отправки/получения TCP в байтах.
-B local-address
Адрес для привязки при исходящих соединениях.
-c concurrency
Количество нескольких запросов, выполняемых одновременно. По умолчанию — один запрос за раз.
-C cookie-name=value
Добавьте Cookie: строку в запрос. Аргумент обычно имеет форму пары . Это поле повторяется. name=value
-d
Не отображать «процент обслуживания в таблице XX [мс]». (устаревшая поддержка).
-e csv-file
Напишите файл значений, разделенных запятыми (CSV), который содержит для каждого процента (от 1% до 100%) время (в миллисекундах), которое потребовалось для обслуживания этого процента запросов. Обычно это более полезно, чем файл 'gnuplot'; так как результаты уже «сложены».
-f protocol
Укажите протокол SSL/TLS (SSL2, SSL3, TLS1, TLS1.1, TLS1.2 или ВСЕ). Поддержка TLS1.1 и TLS1.2 доступна в версии 2.4.4 и более поздних.
-g gnuplot-file
Запишите все измеренные значения в виде файла «gnuplot» или TSV (значения, разделенные вкладкой). Этот файл можно легко импортировать в такие пакеты, как Gnuplot, IDL, Mathematica, Igor или даже Excel. Этикетки находятся в первой строке файла.
-h
Отображение информации об использовании.
-H custom-header
Добавьте дополнительные заголовки к запросу. Аргумент обычно имеет форму допустимой строки заголовка, содержащей пару поле-значение, разделенную двоеточием ( т. е . , "Accept-Encoding: zip/zop;8bit" ).
-i
Делайте HEAD запросы вместо GET .
-k
Включите функцию HTTP KeepAlive, т. е . выполняйте несколько запросов в рамках одного HTTP-сеанса. По умолчанию нет KeepAlive.
-l
Не сообщайте об ошибках, если длина ответов непостоянна. Это может быть полезно для динамических страниц. Доступно в версии 2.4.7 и выше.
-m HTTP-method
Пользовательский метод HTTP для запросов. Доступно в версии 2.4.10 и более поздних.
-n requests
Количество запросов, которые необходимо выполнить для сеанса сравнительного анализа. По умолчанию выполняется только один запрос, который обычно приводит к нерепрезентативным результатам бенчмаркинга.
-p POST-file
Файл, содержащий данные для POST. Не забудьте также установить -T .
-P proxy-auth-username:password
Предоставьте учетные данные BASIC Authentication прокси-серверу в пути. Имя пользователя и пароль разделяются одинарной точкой : и отправляются по кабелю в кодировке base64. Строка отправляется независимо от того, нужна ли она прокси-серверу ( т. е . отправлен ли 407-й запрос аутентификации прокси-сервера).
-q
При обработке более 150 запросов ab выводит счетчик выполнения для stderr каждых 10% или 100 запросов или около того. Флаг -q подавляет эти сообщения.
-r
Не завершайте работу при ошибках получения сокета.
-s timeout
Максимальное количество секунд ожидания до истечения времени ожидания сокета. По умолчанию 30 секунд. Доступно в версии 2.4.4 и более поздних.
-S
Не отображать значения медианы и стандартного отклонения, а также не отображать предупреждения/сообщения об ошибках, если среднее значение и медиана отличаются более чем в один или два раза от стандартного отклонения. И по умолчанию используются минимальные/средние/максимальные значения. (устаревшая поддержка).
-t timelimit
Максимальное количество секунд, затрачиваемое на бенчмаркинг. Это подразумевает -n 50000 внутр. Используйте это для тестирования сервера в течение фиксированного общего времени. По умолчанию нет ограничения по времени.
-T content-type
Заголовок типа содержимого для использования для данных POST/PUT, например. application/x-www-form-urlencoded . Значение по умолчанию text/plain .
-u PUT-file
Файл, содержащий данные для PUT. Не забудьте также установить -T .
-v verbosity
Установить уровень детализации - 4 и выше печатает информацию о заголовках, 3 и выше печатает коды ответов (404, 200 и т.д.), 2 и выше печатает предупреждения и информацию.
-V
Показать номер версии и выйти.
-w
Распечатайте результаты в HTML-таблицах. Таблица по умолчанию имеет ширину в два столбца с белым фоном.
-x <table>-attributes
Строка для использования в качестве атрибутов для <table> . Атрибуты вставлены . <table here >
-X proxy[:port]
Используйте прокси-сервер для запросов.
-y <tr>-attributes
Строка для использования в качестве атрибутов для <tr> .
-z <td>-attributes
Строка для использования в качестве атрибутов для <td> .
-Z ciphersuite
Укажите набор шифров SSL/TLS (см. шифры openssl)

Выход

В следующем списке описаны значения, возвращаемые ab :

Серверное программное обеспечение
Значение, если оно есть, возвращенное в HTTP-заголовке сервера первого успешного ответа. Это включает в себя все символы в заголовке от начала до точки обнаружения символа с десятичным значением 32 (в первую очередь: пробел или CR/LF).
Имя хоста сервера
DNS или IP-адрес, указанный в командной строке
Порт сервера
Порт, к которому подключается ab. Если порт не указан в командной строке, по умолчанию используется 80 для http и 443 для https.
SSL/TLS-протокол
Параметры протокола согласовываются между клиентом и сервером. Это будет напечатано только в том случае, если используется SSL.
Путь к документу
URI запроса, извлеченный из строки командной строки.
Длина документа
Это размер в байтах первого успешно возвращенного документа. Если длина документа изменяется во время тестирования, ответ считается ошибкой.
Уровень параллелизма
Количество одновременных клиентов, использованных во время теста
Время, затраченное на тесты
Это время, прошедшее с момента создания первого сокетного соединения до момента получения последнего ответа.
Завершить запросы
Количество полученных успешных ответов
Неудачные запросы
Количество запросов, которые были признаны неудачными. Если число больше нуля, будет напечатана другая строка, показывающая количество запросов, которые не удалось выполнить из-за подключения, чтения, неправильной длины содержимого или исключений.
Ошибки записи
Количество ошибок, которые завершились сбоем во время записи (сломан канал).
Не-2xx ответы
Количество ответов, не входящих в серию 200 кодов ответов. Если все ответы равны 200, это поле не печатается.
Поддерживающие запросы
Количество подключений, которые привели к запросам Keep-Alive.
Всего тело отправлено
Если настроена отправка данных в рамках теста, это общее количество байтов, отправленных во время тестов. Это поле опускается, если тест не включает тело для отправки.
Всего передано
Общее количество байтов, полученных от сервера. Это число, по сути, является количеством байтов, отправленных по сети.
HTML передан
Общее количество байтов документа, полученных от сервера. Это число не включает байты, полученные в заголовках HTTP.
Запросов в секунду
Это количество запросов в секунду. Это значение является результатом деления количества запросов на общее время.
Время на запрос
Среднее время, потраченное на запрос. Первое значение рассчитывается по формуле, concurrency * timetaken * 1000 / done а второе значение рассчитывается по формуле timetaken * 1000 / done
Скорость передачи
Скорость передачи, рассчитанная по формуле totalread / 1024 / timetaken

Ошибки

Существуют различные статически объявленные буферы фиксированной длины. В сочетании с ленивым анализом аргументов командной строки, заголовков ответа от сервера и других внешних входных данных это может вас укусить.

Он не полностью реализует HTTP/1.x; принимает только некоторые «ожидаемые» формы ответов. Довольно интенсивное использование strstr(3) показывает вверху профиля, что может указывать на проблемы с производительностью; т.е. вы бы измеряли ab производительность, а не сервер.



 <         > 

Пункты:   63      64      65    66    67    68    69    70    71    72    73    74    75    76    77    78    79  

Рейтинг@Mail.ru