我正在使用学说 2,目前没有缓存任何内容。我想在 Doctrine 中启用一些缓存系统,但看起来你必须在任何地方手动管理它:
$memcache = new Memcache();
$memcache->connect('memcache_host', 11211);
$cacheDriver = new \Doctrine\Common\Cache\MemcacheCache();
$cacheDriver->setMemcache($memcache);
$cacheDriver->save('cache_id', 'my_data');
...
$cacheDriver->delete('cache_id');
我想知道 Doctrine 是否可以自动管理这个。例如:
缓存已启用,我通过 id 请求
User
实体,Doctrine 在其缓存中搜索,找不到用户,获取它,将其设置到缓存中,返回它。我第二次获取,Doctrine 将缓存的
User
.- 我更新
User
(或其任何关系)Doctrine 检测它并打破该对象的缓存 - 我通过 id 请求相同
User
,Doctrine 不再有它在缓存中,获取它并使用更新的用户设置缓存,然后返回它
那可能吗?
干杯,马克西姆