gpt4 book ai didi

php - "Refresh cache"在 Magento 中是什么意思?

转载 作者:IT王子 更新时间:2023-10-29 06:10:01 26 4
gpt4 key购买 nike

这是我在调查 Magento 中的缓存行为后发现的。

不确定并要求更正。

当修改产品之类的内容时,缓存条目(例如“HTML Block”)变为“无效”,导致被忽略并且不会在前端使用。这是有道理的,因为这些数据现在已经过时了。

它保持“无效”状态,直到通过管理区域手动“刷新”。

一旦手动“刷新”,缓存 block 的第一次呈现将构建其缓存副本并将其附加到此 HTML block 缓存保留区。此 block 的后续渲染操作将发现此缓存可用,并最终使用它,直到缓存再次“无效”。

为什么这个过程被称为“刷新”,因为它应该类似于“重置”?因为“刷新”意味着它会生成更新的缓存快照,但它只允许构建缓存条目。

为什么失效的数据失效后不刷新?

这让我质疑我的结论,我是否正确?

最佳答案

why this process is called "refresh", as it should be like "reset"

您对此的一般看法是正确的——有些人称其为“刷新”,因为尽管您采取的操作会重置缓存,但在正常工作的 Magento 系统中,缓存几乎会在您(或其他用户)下次执行时立即自行重建加载页面。

Why don't invalidated data become refreshed once it's invalidated?

当缓存失效时,这意味着开发人员处理任何使缓存失效的后端功能都足够聪明,知道他们的操作需要缓存刷新,但程序化的缓存控制不足以仅刷新他们的缓存部分更改缓存。

例如,某些 block 可能会呈现产品价格的变化,这意味着需要刷新任何缓存了价格的 block 。然而,作为后端程序员,没有办法知道哪些 block 需要失效,也不知道它们存储在哪个缓存系统( block 缓存、FPC、清漆)中。还有一个存储问题性能——如果您正在编辑 100 个产品,您是否希望 Magento 在高峰时段重建缓存 100 次?因此,开发人员没有决定如何处理所有这些,而是​​将缓存标记为无效。这允许缓存系统采取它认为必要的任何操作。

在一个完美的理论上的缓存系统中,将运行自动进程来检测无效的缓存,并知道该做什么以及何时刷新它。这是一个实现和维护的复杂系统,因此 Magento 选择简单地通知店主缓存无效,并让他们采取他们认为适当的任何行动。

关于php - "Refresh cache"在 Magento 中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28117413/

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