Zend Framework → Пощупал Zend_Cache

Заинтересовался компонентами Zend Framework, пользоваться которыми ещё не приходилось. Решил попробовать Zend_Cache. Собственно попробовал кеш на этом самом блоге, который родился и продолжает развиваться из моего тестового задания для приёма на работу.

Выбрал 3 не самых ресурсоёмких запроса, которые происходят при каждом обращении к IndexController-у. Это выборка из БД названий непустых категорий и тегов, в которых уже имеются записи, а также имён пользователей блога (я тут пока один).

Код вставить пока не получается, его мочат мои же фильтры, обрабатывающие текст перед выводом, надо будет разобраться :) Да и не в коде дело, ничего секретного там нет, всё как в официальном руководстве по фреймворку, что касается Zend_Cache. А вот результаты поразили...

Я ожидал разницы в считанные миллисекунды максимум, но вышло совсем по другому. Ниже приведу цифры, полученные в результате тестирования на своей локальной машине. Среднее время получения данных и среднеквадратичное отклонение этого времени. Производил эксперимент по 20 раз. Величины выражены в секундах.

Без Zend_Cache‹t› = 0.204060σ = 0.013838
С Zend_Cache‹t› = 0.007756σ = 0.002053

На реальном хостинге величины другие, чем на моём компутере, но разница тоже ощутимая. Однозначно буду использовать этот компонент из фреймворка :) Теперь попробую здесь закешировать что-то более существенное и посмотрю на изменения.

Комментарии

avatar
skarp
avatar
я слабо рублю, но меня впечатлило
ответить
avatar
morontt
avatar
Меня особенно. Разница хоть и в доли секунды, но всё равно на порядки. Тут запросов с десяток, а если их будут сотни?
ответить
avatar
morontt
avatar
На будущее:
http://habrahabr.ru/blogs/mysql/41166
http://dev-4-web.ru/speed-up-site-w-mysql-caching
ответить
3 комментария Написать что-нибудь
Или войдите, чтобы не заполнять форму:
Адрес электронной почты нигде не отображается, необходим только для обратной связи.
Напрограммировано на Go 1.23.2, версия движка 7738e0f