Задать вопрос
  • Как узнать кэшируется ли запрос в Yii 1 (memcached)?

    можно проверить статистику memcached из коммандной строки. вот ссылочка.
    1. Очищаем кеш.
    2. Смотрим пустой ли кеш - кеш должен быть пустым
    3. Кешируем ТОЛЬКО один запрос.
    4. Делаем этот запрос
    5. Смотрим пустой ли кеш - кеш не должен быть пустым
    Условие ставится ставится для того, чтобы проверить, есть ли данные в кеше по такому-то ключику. Если они есть, то данные берутся с кеша. Если их нет, то их нужно туда положить и вернуть данные. Перед тем, как кеш использовать, нужно описать его как модуль в конфиге. Проверить работает ли сам кеш можно проверить напрямую без кеширования запросов, а кешированием просто данных:
    $dataCacheKey = 'data_key';
    if($data = Yii::app()->cache->get($dataCacheKey)){
        echo 'Data cached';
    }else{
        $data = 'asd';
        Yii::app()->cache->add($dataCacheKey, $data);
    }
    
    return $data;
    // навскидку как-то так

    можно использовать CDummyCache для того, чтобы писать код под кеширующие ф-ии, но при этом никакого кешированя нет. Такой себе кеш-пустышка, который типа и кеширует, но он ничего и не кеширует, но предоставляет полный интерфейс для кеширования. Потом в конфиге можно просто изменить класс, который будет это все дело кешировать и ничего по коду изменять не надо будет. Читайте ман по кешированию в Yii
    Ответ написан
    1 комментарий