0

我记得读过关于 Symfony 的 Doctrine 的类似内容,但我在 Zend 2 文档中找不到任何相关内容。

这是解释的问题:

假设在一个控制器动作中我调用了两个模型函数(都在同一个模型中):两个函数运行完全相同的TableGateway查询集。这些查询仅SELECT数据。此外,此操作中没有INSERT/UPDATE任何操作。

在这种情况下,Zend 会运行两次查询集吗?或者,看到它们是重复的并且INSERT/UPDATE中间没有进行任何操作,它只会运行一次查询集,第二次从某个内部缓存中返回它。

附言。以防万一,请理解我不需要一般的最佳实践建议,只需要了解 Zend 核心深度的人的具体答案。

4

1 回答 1

0

不,无论如何这样做都是不好的,因为您的应用程序不知道另一个应用程序是否已写入数据库并使您的缓存查询无效。

如果您在我的 sql 中启用了查询缓存,则可以缓存查询,因为 rdbms 知道该数据是否可以缓存或是否已更改。

于 2017-02-22T22:22:25.697 回答