ApacheBench

Pause

ApacheBench (ab) — однопоточная консольная компьютерная программа для нагрузочного тестирования (измерения производительности) веб-серверов по протоколу HTTP[1]. Изначально разрабатывалась для тестирования Apache HTTP Server, но является универсальным инструментом и может использоваться для проверки любого веб-сервера, поддерживающего протоколы HTTP/1.0 или HTTP/1.1.

Инструмент ab написан на языке Си, входит в стандартный исходный пакет Apache и, как и сам веб-сервер Apache, распространяется свободно как открытое программное обеспечение на условиях лицензии Apache версии 2.0[2].

История

Изначально программа называлась zb («ZeusBench V1.0») и была написана Адамом Твиссом (компания Zeus Technology) в 1996 году для измерения производительности Zeus Web Server. Вскоре после этого Твисс передал (пожертвовал) программу группе Apache, после чего она была переименована в ab («ApacheBench»).

Начиная с 1997—1998 годов ab развивается и поддерживается как вспомогательная программа внутри состава Apache HTTP Server: от версии 1.0 (1997/1998) до по крайней мере 2.3 (2021 год) и далее. По состоянию на октябрь 2026 года номер версии утилиты — 2.3[3].

Поддержка протоколов

ApacheBench позволяет тестировать серверы по HTTPS, если утилита собрана с поддержкой SSL[4][5]. Протоколы HTTP/2 и HTTP/3 утилитой не поддерживаются[4].

Одновременность и потоки

Необходимо учитывать, что ApacheBench использует только один поток операционной системы независимо от значения параметра -c, определяющего уровень одновременности. В некоторых случаях, особенно при тестировании серверов с большой производительностью, одним из узких мест становится уже сама программа ApacheBench. На многопроцессорных системах для большего насыщения тестируемого сервера рекомендуется запускать несколько экземпляров ApacheBench параллельно.

Обнаружение ApacheBench

User-Agent строка, используемая ApacheBench, имеет вид ApacheBench/МАЖОР.МИНОР, где МАЖОР и МИНОР — основные и дополнительные номера версии программы[6]. Во многих случаях веб-аналитики, такие как Webalizer или AWStats, неправильно определяют трафик, сгенерированный ApacheBench, поэтому результаты их отчётов могут искажаться при проведении массовых тестов.

Примечания

  1. ↑ ab — инструмент нагрузочного тестирования Apache HTTP Server (англ.). Apache. Дата обращения: 6 октября 2026. Архивировано 16 сентября 2025 года.
  2. ↑ The Apache License, Version 2.0. Apache HTTP Server. Дата обращения: 6 октября 2026.
  3. ↑ ApacheBench (ab): pricing, license & alternatives (2026). perf.jmeter.ai. Дата обращения: 6 октября 2026.
  4. ↑ 1 2 ApacheBench (ab) review (2026): verdict, ratings, pros & cons. perf.jmeter.ai. Дата обращения: 6 октября 2026.
  5. ↑ GitHub - CloudFundoo/ApacheBench-ab: Stand alone apache bench (ab). GitHub. Дата обращения: 6 октября 2026.
  6. ↑ User-Agent для AB (ApacheBench) (англ.). User-Agent-String-Info. Дата обращения: 6 октября 2026. Архивировано 21 мая 2011 года.
Pause