Сравнение времени отклика с/без boost

Главные вкладки

Аватар пользователя Комок знаний Комок знаний 2 мая 2010 в 1:02

Здравствуйте. Хочу заметить заранее, что я начинающий разработчик и в связи с этим могу либо привести избыточную информацию, либо не указать ее в необходимом объеме. Если чего-то не хватает для того, что бы ответить на мой вопрос, пожалуйста, спрашивайте в комментариях.
Теперь ближе к делу. Тестирую синтетическими нагрузками (утилитой ab) сайт на локальной машинке. ОС ubuntu 10.04, стандартная lamp установка с практически дефолтным конфигом, 6 друпал и, в числе прочих, модули: boost, global redirect, view. Точную конфигурацию машины приводить не вижу смысла, так как меня заинтересовали относительные расхождения в величинах, а не абсолютные значения.
Приведу значения, получаемые после выполнения команд
ab -n 20 site.local/
ab -n 20 site.local/spisok
ab -n 20 site.local/spisok/
Обратите внимание, второй и третий запросы отличаются лишь слэшем на конце. По адресу "/spisok" выполняется простой view, выдающий заголовки нод определенного типа. Приведу результаты тестов при различных комбинациях настроек модулей. Везде буду давать значения Time per request.

Для начало результаты этих тестов при boost: 1, global redirect (опция deslash): 1
ab -n 20 site.local/ ~2ms
ab -n 20 site.local/spisok ~500ms
ab -n 20 site.local/spisok/ ~200ms

Здесь интересно увеличение более чем в два раза времени при запросе без обратного слэша на конце.

Теперь результаты этих тестов при boost: 1, global redirect (опция deslash): 0
ab -n 20 site.local/ ~2ms
ab -n 20 site.local/spisok ~500ms
ab -n 20 site.local/spisok/ ~500ms

Время запросов "/spisok" и "/spisok/" сравнялось, но с максимальным значением.

Последняя порция данных при boost: 0, global redirect (опция deslash): 1
ab -n 20 site.local/ ~370ms
ab -n 20 site.local/spisok ~350ms
ab -n 20 site.local/spisok/ ~210ms

При boost: 0 и global redirect (опция deslash): 0 все тоже самое, за исключением запроса без слэша на конце — он вновь выравнивается по максимальному запросу со слэшем.

Итак, сформулирую ряд вопросов.
1. Почему при включенном boost запрос /spisok не кешируется. Boost говорит, что анонимы получают ее из кеша?
2. Почему состояние опции deslash из модуля global redirect так странно влияет на время отдачи страницы?
3. Почему есть разница в два раза по времени отдачи, при наличии и отсутствии слэша на конце запроса?

Заранее извиняюсь, если методология тестов и сами вопросы покажутся Вам глупыми, но для меня важно понять почему так происходит. Честно говоря, глубоко не копал, поверхностный поиск не дал результатов. С английским проблем нет, так что буду благодарен, если ткнёте меня в доки/ссылки. Спасибо.

Комментарии