Скамья Apache - Обзор
Тестирование производительности оказалось решающим для успеха бизнеса. Плохо работающий сайт не только несет финансовые потери, но и временами может привести к судебным последствиям.
Никто не хочет мириться с медленно работающим и ненадежным сайтом при важных интерактивных взаимодействиях, таких как покупка, сдача онлайн-тестов, оплата счетов и т. Д. Поскольку Интернет настолько широко доступен, диапазон альтернатив огромен. Легче потерять клиентуру, чем получить ее, и производительность играет ключевую роль.
Необходимость в инструменте нагрузочного тестирования
Если мы сможем понять, для чего нужен инструмент для нагрузочного тестирования, это даст нам причину и мотивацию для его использования. Некоторые известные бизнес-сайты пострадали от серьезных простоев из-за большого количества посетителей. Сайты электронной коммерции вкладывают большие средства в рекламные кампании, но не в нагрузочное тестирование. Следовательно, они не могут обеспечить оптимальную производительность системы, когда этот маркетинг приносит трафик.
Другой знакомый пример игнорирования нагрузочного тестирования - это «ошибка при установлении соединения» на веб-сайтах WordPress. Поэтому рекомендуется провести нагрузочное тестирование веб-сайта или приложения перед их развертыванием в производственной среде. Приятно быстро создать лучший сценарий для проекта, прежде чем запускать более подробные тесты в будущем.
Что такое Apache Bench?
Apache Bench (ab) - это инструмент от компании Apache для тестирования веб-сервера протокола передачи гипертекста (HTTP). Хотя он предназначен для измерения производительности веб-сервера Apache, его также можно использовать для тестирования любого другого веб-сервера, который не менее хорош. С помощью этого инструмента вы можете быстро узнать, сколько запросов в секунду может обслуживать ваш веб-сервер.
Особенности Apache Bench
Давайте посмотрим на важные функции и ограничения Apache Bench. Функции и ограничения перечислены ниже -
Поскольку это программное обеспечение с открытым исходным кодом, оно находится в свободном доступе.
Это простая компьютерная программа из командной строки.
Это инструмент, не зависящий от платформы. Это означает, что он может быть запущен как на 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.
Предупредив вас, позвольте мне заверить вас, что все тесты в этом руководстве достаточно безопасны и не подпадают под то, что системные администраторы обычно называют "злоупотреблением системой".