有一些特定的开发策略可以使应用程序高度可缓存。

让我们回到电子商务的例子。让我们创建一个列出热门产品或类似内容的主页。顶级产品需要大量的数据库查询才能呈现,因此您需要对其进行缓存。但问题出在购物车上,它也必须显示在主页上,并且对每个访问者来说都是独一无二的。对于某些人来说,它根本不存在。

允许您解决此问题的策略是显示所有用户共有的页面部分

并单独生成一个唯一的购物篮,然后使用 Javascript 将其加载到页面上。最后你会得到相同的,但是!但现在您可以缓存整个页面以及重磅产品,然后将一个独特的购物车上传到它。没错,现在有必要提出两个请求,而不是一个。

这样的策略很难在现有的应用程序上实现——你必须深入到CMS的内部,重写显示层等。如果你走这条路,那么你需要在一开始就奠定这样的机会——当开发页面布局。

陈旧缓存:清除和绕过

使用 max-age 和 s-maxage 指令,您可以控 约旦手机号码列表 制某些特定元素在缓存中的存活时间。但这还不够。这些指令将原点设置为页面生成的那一刻。在这一点上,您可能还不知道这个元素什么时候会过时。例如,新闻站点的主页。让它包含 10 条主要新闻。你将它设置为 max-age=900 确保它每 15 分钟更新一次。但是突然间,出于某种原因,不到 15 分钟就传来了不寻常的消息。您现在需要删除相应的缓存响应。

这是一个相当普遍的问题并且有解决方案让我们先处理术语

电话号码列表

“缓存破坏”意味着使用更改后的密钥 cz 列表 绕过缓存项。通过修改请求中的页面地址,例如上面使用的示例 – 这里是在缓存中搜索元素的关键字 – 让我们通过稍微更改 URL 和相应的键 – some/page?v2 来请求页面,然后我们将绕过缓存并且获取的不是缓存内容,而是新内容。
缓存清除意味着从缓存中删除一个项目,然后它应该立即更新。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注