Измеряем производительность скриптов и CMS

Как протестировать производительность какой-нибудь cms, скрипта, плагина или целого веб сервера, чтобы узнать возможный потенциал и целесообразность использования того или иного инструмента? Для этого в популярном веб сервере apache, есть встроенная для тестирования утилита ab. Находится эта утилита в каталоге \usr\local\apache\bin. Рассмотрим запуск утилиты из под виндоус

Если просто запустить эту утилиту, то она почти сразу и закроется да и не удобно каждый раз набирать команды. Как вариант я бы посоветовал следующее – создаем на рабочем столе текстовый документ с:


S:
cd usr\local\apache\bin
start ab.exe
ab -n 2000 -c 10 http://yellowlemon.net/
pause

Где буква S – ваш диск веб сервера
cd – открытие каталога
start – запуск исполняемой программы

а дальше уже команды поддерживаемые утилитой ab
-n количество запросов которые должен обработать веб сервер
количество параллельных запросов

И ставим паузу, чтобы окно не закрылось после теста и мы могли увидеть результат.

Переименовываем текстовый файл в: любое_имя.cmd и запускаем, ждем – смотрим результат. Если есть необходимость, то делаем несколько разных файлов с разными параметрами

Что видим из теста:
Измеряем производительность скриптов и CMS

Document Length: размер страницы тестирования – 2231 байт это сугубо html без графики скриптов и т.д
Time taken for teste: время выполнения скрипта чуть более 35 секунд – выполнялись 2000 запросов
Total transferres: общее кол-во переданного трафика – 4 с лишним мегабайта
Time per request: среднее время выполнения одного запроса почти 0.018 секунды
Requests per second: количество запросов обрабатываемых за секунду составило более 56
в теории за сутки сервер выдержит 4.8 миллиона равномерно распределённых по времени запросов

Что может дать нам этот тест? Под обычным домашним виндоусом мало чего так как реально сайт у нас стоит на другом сервере с другим ПО, другими настройками и в 90% не под win OS, НО тем не менее показать порядок производительности какой-нибудь cms или скрипта или же установленного дополнительного плагина или модуля вполне возможно получить приблизительную оценку скорости работы. Да и не у всех есть свой сервер для тестирования.