Аннулирование кеша результатов Doctrine 2

Я использую кеш результатов Doctrine 2 для запроса, извлекающего количество новых сообщений пользователя (приложение для обмена сообщениями):

$query->useResultCache(true, 500, 'messaging.nb_new_messages.'.$userId);

Я пытался аннулировать этот кеш следующим образом (в моем репозитории сущностей ):

public function clearNbNewMessagesOfUserCache($userId) {
    $cacheDriver = $this->getEntityManager()->getConfiguration()->getResultCacheImpl();
    $result  = $cacheDriver->delete('skepin_messaging.nbNewMessages.'.$userId);

    if (!$result) {
        return false;
    }

    return $cacheDriver->flushAll();
}

Чтобы мне не нужно было делать бесполезный запрос на каждой странице моего сайта.

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

7
задан Benjamin 28 August 2012 в 12:04
поделиться