禁用对doctrine中特定函数的缓存

时间:2013-09-27 04:29:58

标签: caching doctrine-orm

我想禁用教条的特定功能(页面)的默认缓存,在所有其他页面上,它应该像往常一样工作。此外,我甚至不想清除该功能中的当前缓存。只需要这样,对于特定的函数调用及其内部工作流程,不会考虑缓存。

有没有简单的方法来实现这一目标?感谢。

2 个答案:

答案 0 :(得分:1)

Rana,我相信你可以使用$ query-> useResultCache(false);禁用所需页面的缓存。如果需要,请查看documentation

干杯,

答案 1 :(得分:0)

您可以使用caching turned off的特定页面使用其他实体管理器。由于你没有提到你使用什么样的框架,我无法做出任何进一步的假设。

根据documentation(以及个人经验),你不应该在没有缓存的情况下使用学说:

  

不使用没有元数据和查询缓存的Doctrine! Doctrine针对使用缓存进行了优化。 Doctrine中针对缓存进行了优化的主要部分是具有元数据缓存的元数据映射信息以及具有查询缓存的DQL到SQL转换。这两个缓存只需要绝对最小的内存,但它们大大提高了Doctrine的运行时性能。与Doctrine一起使用的推荐缓存驱动程序是APC。 APC为您提供操作码缓存(无论如何强烈推荐)和非常快速的内存缓存存储,您可以将其用于元数据和查询缓存,如前面的代码片段所示。

您是否介意分享您的特定需求,以便为您的问题提供更好的答案/解决方案?