【发布时间】:2012-10-10 23:34:54
【问题描述】:
我有一个用于我玩的视频游戏的网站,我正在努力通过实施一些额外的缓存来提高网站的性能。我已经能够在自定义存储库函数上实现查询结果缓存,但无法找到任何解释我如何在内置函数(findOneById 等)中包含查询结果缓存的地方。我对此很感兴趣,因为我的许多数据库查询都是从这些“本机”存储库函数中执行的。
例如,我有一个具有以下属性的角色实体对象:id、name、race、class 等。
此对象中的种族和类是对种族和类的其他实体对象的引用。
当我加载一个字符进行显示时,我按名称 (findOneByName) 获取该字符,然后在我的模板中通过$characterObject->getRace()->getName() 显示该字符的种族/类别。模板中的这些方法调用导致在我的 Race/Class 实体表上运行查询,按 id 获取实体(我假设为 findOneById)。
我尝试在存储库中创建自己的 findOneById 函数,但在这些情况下不会调用它。
如何设置学说/symfony 以使这些查询结果可缓存?
我正在运行 Symfony 2.1.3 和教义 2.3.x
【问题讨论】:
标签: caching symfony doctrine-orm