Главная > Без рубрики > Синтетические тесты WEB сервера нагрузочные и не только

Синтетические тесты WEB сервера нагрузочные и не только

И так мы настроили новый (на замену строму) или же оптимизируем действующий WEB сервер но как определить производительность и как предугадать поведение сервера при большой нагрузке ?? как понять где у вас самое уязвимое место БД или WEB-сервер ??

Для этих целей существует несколько утилит
ab (Apache HTTP server benchmarking tool)
siege

и так начнем с программы ab

ab

программа ab идет в пакете apache2-utils
следовательно устанавливаем пакет apache2-utils

apt-get install apache2-utils

использование :

ab -n 100 -с 10 http://site.com/search.php?q=ab

что мы сделали ?? мы послали серверу 100 запросов на страничку http://site.com/search.php?q=ab (в данном примере поисковый запрос) по 10 запросов одновременно

для отсылки к примеру 100 запросов по очереди просто не указываем параметр -с

ab -n 100 http://site.com/search.php?q=ab 

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

ab -n 100 http://site.com/
ab -n 100 http://site.com/logo.gif
ab -n 100 http://site.com/main.css
ab -n 100 http://site.com/index.php

при отправке запросов ab дожидается ответа на запрос (200OK), либо ошибки

тоесть при использовании ab -n 100 -с 10 посылается 10 запросов одновременно после обработки всех 10 запросов следует еще 10 одновременно и так до значения заданного функцией -n
а при использовании ab -n 100 просто 100 запросов подряд дожидаясь ответа каждого запроса перед следующим
но ab имеет куда больший функционал
более подробно или на сайте розработчика или вот тут http://forum.antichat.ru/printthread.php?t=117282

siege

устанавливаем siege

apt-get install siege

использование :

ну снова самый простой пример

siege http://site.com/index.php -d1 -r50 -c10

где

-d1 -задержка в секундах мужду запросами (пакетами запросов) по умолчанию оно лежит в диапозитиве от 1 до 3 и для каждого запроса случайное
-r50 -количество повторов теста (повторов пакетов)
-c10 — количество одновременных запросов (в пакете)
и мы имеем 50 пакетов запросов по 10 запросов в каждом с интервалом в 1 секунду

если не указывать index.php то siege получит редирект на index.php и выполнит этот запрос

ну и опять же таки можно формировать любой запрос (просто страничка, запрос, картинка, файл)

siege имеет куда больше функционала

более подробно описано на сайте розработчика либо тут

Выводы

необходимо четко понимать что эти тесты есть «синтетические» и результат они дают такой же «синтетический» и очень даже относительный, но вполне подходят для сравнивания показателей «ДО» и «ПОСЛЕ» изменений или оптимизации сервера или кода

Categories: Без рубрики Tags:
  1. Пока что нет комментариев.
  1. Пока что нет уведомлений.