创新互联Django4.0教程:Django4.0缓存框架-下游缓存

到目前为止,本文档的重点是缓存您自己的数据。 但是另一种类型的缓存也与 Web 开发相关:由“下游”缓存执行的缓存。 这些系统甚至在请求到达您的网站之前就为用户缓存页面。

创新互联主营范县网站建设的网络公司,主营网站建设方案,成都app软件开发,范县h5成都微信小程序搭建,范县网站营销推广欢迎范县等地区企业咨询

下面是一些下游缓存的例子:

  • 使用 HTTP 时,您的 ISP 可能会缓存某些页面,因此如果您从 http://example.com/ 请求页面,您的 ISP 将向您发送该页面,而无需直接访问 example.com。 example.com 的维护者不知道这种缓存; ISP 位于 example.com 和您的 Web 浏览器之间,透明地处理所有缓存。 这种缓存在 HTTPS 下是不可能的,因为它会构成中间人攻击。
  • 您的 Django 网站可能会在一个代理缓存的后面,例如Squid 网页代理缓存,为了性能而缓存页面。在这种情况下,每个请求首先由代理来处理,只有在需要时才将其传递给应用程序。
  • 您的网络浏览器也会缓存页面。 如果网页发送了适当的标头,您的浏览器将使用本地缓存副本来处理对该页面的后续请求,甚至无需再次联系该网页以查看它是否已更改。

下游缓存是一个很好的效率提升,但它存在一个危险:许多网页的内容基于身份验证和许多其他变量而有所不同,并且缓存系统盲目地仅基于 URL 保存页面可能会将不正确或敏感的数据暴露给后续这些页面的访问者。

例如,如果您使用网络电子邮件系统,那么收件箱页面的内容取决于登录的用户。如果 ISP 盲目缓存您的站点,那么通过该 ISP 登录的第一个用户将拥有他们的用户 - 为该站点的后续访问者缓存的特定收件箱页面。

幸运的是,HTTP 为这个问题提供了解决方案。存在许多 HTTP 报头以指示下游缓存根据指定的变量来区分它们的缓存内容,并且告诉缓存机制不缓存特定的页面。

新闻标题:创新互联Django4.0教程:Django4.0缓存框架-下游缓存
文章链接:http://www.shufengxianlan.com/qtweb/news29/404979.html

成都网站建设公司_创新互联,为您提供网站收录标签优化云服务器网站设计公司品牌网站设计定制网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联