Учебники

Apache Bench — Обзор

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

Никто не хочет мириться с медленным, ненадежным сайтом в важных онлайн-взаимодействиях, таких как покупки, онлайн-тестирование, оплата счетов и т. Д. Благодаря широкому доступу в Интернет диапазон альтернатив огромен. Проще потерять клиентуру, чем завоевать ее, и производительность играет ключевую роль в игре.

Необходим инструмент для нагрузочного тестирования

Если мы сможем понять, для чего нужен инструмент нагрузочного тестирования, это даст нам причину и мотивацию для его использования. Некоторые известные бизнес-сайты пострадали серьезные простоя, когда они получают большое количество посетителей. Сайты электронной коммерции вкладывают большие средства в рекламные кампании, но не в нагрузочное тестирование. Поэтому они не могут обеспечить оптимальную производительность системы, когда этот маркетинг приносит трафик.

Другим знакомым примером игнорирования нагрузочного тестирования является «ошибка при установлении соединения» на сайтах WordPress. Поэтому рекомендуется выполнить нагрузочное тестирование веб-сайта или приложения перед его внедрением в производство. Хорошо бы быстро создать наилучший сценарий для проекта, прежде чем проводить более подробные тесты в будущем.

Что такое Apache Bench?

Apache Bench (ab) — это инструмент организации Apache для тестирования веб-сервера по протоколу гипертекстовой передачи (HTTP). Хотя он предназначен для измерения производительности веб-сервера Apache, он также может использоваться для тестирования любого другого веб-сервера, который одинаково хорош. С помощью этого инструмента вы можете быстро узнать, сколько запросов в секунду способен обслуживать ваш веб-сервер.

Особенности Apache Bench

Давайте посмотрим на важные функции и ограничения Apache Bench. Функции и ограничения перечислены ниже —

  • Будучи программным обеспечением с открытым исходным кодом, оно свободно доступно.

  • Это простая компьютерная программа командной строки.

  • Это независимый от платформы инструмент. Это означает, что он может быть вызван на Linux / Unix или на сервере Windows одинаково хорошо.

  • Он может проводить нагрузку и тестирование производительности только для веб-сервера — HTTP или HTTPS.

  • Это не растяжимо.

Будучи программным обеспечением с открытым исходным кодом, оно свободно доступно.

Это простая компьютерная программа командной строки.

Это независимый от платформы инструмент. Это означает, что он может быть вызван на Linux / Unix или на сервере Windows одинаково хорошо.

Он может проводить нагрузку и тестирование производительности только для веб-сервера — HTTP или HTTPS.

Это не растяжимо.

Apache Bench использует только один поток операционной системы независимо от уровня параллелизма (указанного в флаге -c). Следовательно, при тестировании серверов большой емкости отдельный экземпляр Apache Bench может сам по себе стать узким местом. Чтобы полностью насытить целевой URL, лучше использовать дополнительные экземпляры Apache Bench параллельно, если ваш сервер имеет несколько процессорных ядер.

предосторожность

Вы должны знать, что в Apache Bench нет директивы для увеличения параллелизма в определенных интервалах во время выполнения тестов. Поэтому выполнение нагрузочных тестов с использованием ab эквивалентно атаке типа «отказ в обслуживании» (DOS). Рекомендуется сообщить и получить предварительное разрешение от поставщика услуг VPS, если вы собираетесь проводить тестирование с высокой нагрузкой в ​​течение длительного периода времени. Они предоставят вам соответствующий интервал времени или сместят ваш узел для задачи нагрузочного тестирования.

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

Предупредив вас, позвольте мне заверить вас, что все тесты в этом учебном пособии достаточно безопасны и не соответствуют тому, что системные администраторы обычно называют практикой «злоупотребления системой».