Тест Apache: что означает общее среднее значение в миллисекундах? - PullRequest
1 голос
/ 26 сентября 2011

Я тестирую PHP-приложение с помощью Apache.У меня есть сервер на моей локальной машине.Я запускаю следующее:

ab -n 100 -c 10 http://my-domain.local/

И получаю это:

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    3   3.7      2       8
Processing:   311  734 276.1    756    1333
Waiting:      310  722 273.6    750    1330
Total:        311  737 278.9    764    1341

Однако, если я обновлю свой браузер на странице http://my -domain.local / Я обнаружил, что загрузка страницы занимает больше 737 мс (это означает, что ab сообщает) (около 3000-4000 мс).Я могу повторить это много раз, и загрузка страницы в браузере всегда занимает не менее 3000 мс.

Я тестировал другую, более тяжелую страницу (загрузка страницы в браузере занимает 8-10 секунд).Я использовал параллелизм 1 для симуляции одного пользователя, загружающего страницу:

ab -n 100 -c 1 http://my-domain.local/heavy-page/

И результаты здесь:

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.1      0       1
Processing:    17   20   4.7     18      46
Waiting:       16   20   4.6     18      46
Total:         17   20   4.7     18      46

Так что же говорит общая строка на результатах ab??Понятно, что это не количество миллисекунд, которое браузер загружает веб-страницу.Является ли количество миллисекунд, которое требуется браузером для загрузки страницы (X), линейно зависимым от количества полных средних миллисекунд ab отчетов (Y)?Итак, если я могу уменьшить половину Y, я также уменьшил половину X?

(Также я не совсем уверен, что означают Обработка, Ожидание и Итого).


Я снова открою этот вопрос, так как снова столкнулся с проблемой.Недавно я установил лак.Я запускаю ab так: ab -n 100 http://my -domain.local / Apache Bench сообщает очень быстрое время отклика:

Requests per second:    462.92 [#/sec] (mean)
Time per request:       2.160 [ms] (mean)
Time per request:       2.160 [ms] (mean, across all concurrent requests)
Transfer rate:          6131.37 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.0      0       0
Processing:     1    2   2.3      1      13
Waiting:        0    1   2.0      1      12
Total:          1    2   2.3      1      13

Таким образом, время на запрос составляет около 2,2 мс,Когда я просматриваю сайт (как анонимный пользователь), время загрузки страницы составляет около 1,5 секунд.

Вот изображение с сетевой вкладки Firebug.Как вы можете видеть, мой браузер ждет ответа моего сайта в течение 1,68 секунды.Почему это число намного больше, чем количество запросов в отчетах?Snapshot from Firebug net tab

Ответы [ 2 ]

0 голосов
/ 27 сентября 2011

Хорошо .. Я думаю, я знаю, в чем проблема. Пока я измерял время загрузки страницы в браузере, я вошел в систему .. Так что ничего тяжелого не происходит. Время загрузки страницы в браузере с анонимным пользователем ближе к тому, о котором сообщает ab.

0 голосов
/ 26 сентября 2011

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...