gpt4 book ai didi

mongodb - Doctrine MongoDB 结果缓存

转载 作者:IT老高 更新时间:2023-10-28 12:29:11 24 4
gpt4 key购买 nike

如何缓存 Doctrine MongoDB 结果?查看 Configuration 的代码,它似乎没有像标准 Doctrine 这样的内置结果缓存,只有一个查询缓存。

我曾想过在应用程序中创建自己的缓存层,但返回的对象非常重,因为它们包含许多 View 不需要的 Doctrine 逻辑。如何将对象配对,使它们实际上只是数据容器?

最佳答案

Doctrine MongoDB ODM 不支持查询缓存,所以这绝对是您暂时需要在应用程序中处理的事情。

如果您对重物有疑问,很可能是代理实例(用于引用的文档),因为这些实例包含对内部 Doctrine 服务(例如 UnitOfWork)的引用。如果你想有效地缓存这些,你基本上需要在存储之前剔除这些引用,然后在从缓存中获取它们之后恢复它们。这可能比它的值(value)更麻烦,但它会将对象减少到您想要的数据容器。

或者,如果您使用查询构建器,您可以禁用水合,然后为返回的数组结果实现缓存。除此之外,您还可以查看应用程序中的缓存 View (这在 Symfony2 中非常理想,一个请求可能会到达多个 Controller ,每个 Controller 都可以应用自己的缓存规则并选择性地使用 ESI)。

关于mongodb - Doctrine MongoDB 结果缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12473797/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com