2009-11-27 2 views
0

У меня есть веб-сайт в закрытой бета-версии, разработанный в Django, работает с Mysql на Debian.Измерение производительности - с помощью реальных кликов против команды «ab»

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

Когда я искал проблемы, я столкнулся с этим вопросом, что я не мог понять:

top команда показывает, что, когда я прошу главную страницу, MySQL снимает до 90% - 100% использования процессора , Я получаю страницу так же, как использование процессора возвращается к норме. Итак, я думал, это дБ.

Затем я позвонил ab с параметрами -n 1000 -c 5, я получил приличную производительность около 100 страниц в секунду, как и до замедления. Я бы представил худшую производительность, так как 10-20% запросов занимают 10 секунд для загрузки.

Этот конфликт между ab и «реальными» кликами нормальный, или я использую ab в неправильной конфигурации?

+0

Вы пробовали медленное ведение журнала MySQL? Профилировали приложение? –

+0

Нет, еще нет. На самом деле я не спрашиваю о причинах замедления (но мне, возможно, придется скоро), мне просто интересно, почему замедление не отражается на выходе ab. – shanyu

+0

Это может быть где-то в коде, зависящем от входа пользователя в систему, например. –

ответ

0

ab не выполняет многие части страницы (javascript i.e.), поэтому вы заметите, вероятно, разумную разницу в давлении на веб-сервер.

+0

Спасибо за ответ. Тем не менее, замедление не связано с загрузкой или выполнением javascript (js-файлы сжимаются, версируются и имеют даты истечения будущего). – shanyu

+0

Но делает ли javascript какой-то другой вызов веб-сервера (т. Е. Ajax) при выполнении на стороне клиента? – Ass3mbler

+0

Нет, нет аякса на странице Я сравниваю. Стоит упомянуть, что браузер зависает во время ожидания сервера (около 10 секунд), а затем получает и делает страницу очень быстрой. – shanyu

Смежные вопросы