Redis с PHP - реализация кэширования данных

Я установил redis на свой сервер и реализовал кэширование объектов для данных, возвращаемых в веб-приложении на базе PHP. Модель php по сути выполняет достаточно сложный запрос и возвращает подробный массив данных. Я протестировал кэширование и обнаружил, что все работает, как ожидалось. Сначала я проверяю, существует ли ключ в redis. Если да, redis возвращает данные, модель отсериализует и возвращает ранее кэшированные данные. Если срок действия кэша истек, модель выполняет sql-запрос, возвращает данные и устанавливает ключ и сериализованное значение в redis.

Итак, вот мои вопросы.

  1. Я не уверен, как действительно проверить это, поскольку все это основано на браузере. Какие есть инструменты, которые позволили бы мне получить разумный бенчмарк для сравнения кэширования и без кэширования. Я думаю о php-скрипте, который вызывает api 1000 раз через curl.

  2. Я реализовал это в redis, потому что однажды прочитал, что кэширование с помощью redis будет работать для нескольких сессий или ip-адресов, обращающихся к сайту. Например, если к api обращаются 1000 раз в час несколько ip-адресов/пользователей, я предполагаю, что такой подход снизит нагрузку на сервер mysql и позволит redis выполнять работу по возврату кэшированных данных. Может ли кто-нибудь пролить свет на это? Верны ли мои предположения?

Все комментарии приветствуются!

Спасибо!

Dave

6
задан dnpage 28 January 2012 в 03:47
поделиться