ユーザー(メッセージングアプリ)の新しいメッセージの数を取得するクエリで 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();
}
ウェブサイトの各ページで無駄なクエリを作成する必要がないように。
私の質問:それは推奨される方法ですか? 最終的に問題が発生しますか?