と呼ばれるProduct
エンティティがあり、ユーザーが製品情報ページにアクセスするたびにこのエンティティが読み込まれるとします。通常、リクエストごとにdbにヒットしないように、オブジェクトをZend_Cache(memcache)に1時間保存しますが、プロキシオブジェクトがあるため、Doctrine2エンティティではそれが不可能であると理解しています。
だから私の質問は、リクエストごとにデータベースから同じエンティティをロードしないようにするにはどうすればよいですか?
[編集]
このようにDoctrineCacheを使ってみました
$categoryService = App_Service_Container::getService('\App\Service\Category'); $cache = $categoryService->getEm()->getConfiguration()->getResultCacheImpl(); $apple = $cache->fetch('apple');
しかし、次のエラーが発生します
警告:require(App / Entity / Proxy / _ CG _ /App/Entity/Category.php)[function.require]:ストリームを開くことができませんでした:/ opt / vhosts / app / price /library/にそのようなファイルまたはディレクトリはありません163行目のDoctrine/Common / ClassLoader.php
これはZendCacheでも同じであり、Proxyクラスのためにエンティティをシリアル化できません。