前端中的强缓存与协商缓存

强缓存:是直接从本地缓存中加载资源,不向服务器发起请求,除非过期了。这种方式可以减少网络延迟,提高页面加载速度,但无法保证资源的最新性

皮一下 :
不管你咋样,我都不搭理你,除非我真的无聊了,任性不?

协商缓存:会在加载资源时先询问服务器,如果资源未更改,直接从本地缓存加载 ;如果资源已更改,则重新从服务器加载。这种方式可以确保使用最新资源,但可能会增加网络延迟。

皮一下 :
每次都看你一眼,你变强了,我们聊一下,否则继续不理你,现实不?

使用场景

强缓存通常用于减少网络延迟,提高页面加载速度,适用于访问量较大且资源变化不频繁的情况。

协商缓存则适用于需要确保始终使用最新资源的情况,适用于资源变化频繁或需要根据用户个性化需求加载不同资源的情况。

常见场景

常见配置

html配置为不缓存(nostore),其余静态资源配置为强缓存 (max-age)。

为什么?

html页面不缓存保证拿到最新资源另外构建工具可以达到有修改的静态资源hash会有变动,没有改动的静态资源hash不变,两者结合能最大限度的增加缓存命中

皮一下

不缓存 (死活不理你)
cache-control: nostore

强缓存(按需理你)
cache-control:max-age=2592000

协商缓存(试探性理你
cache-control : nocache

相关推荐

  1. 前端缓存协商缓存

    2024-02-19 06:00:03       50 阅读
  2. 前端协商缓存缓存

    2024-02-19 06:00:03       33 阅读
  3. 缓存协商缓存区别?

    2024-02-19 06:00:03       40 阅读
  4. 缓存协商缓存区别

    2024-02-19 06:00:03       40 阅读
  5. HTTP缓存/缓存/协商缓存

    2024-02-19 06:00:03       25 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-19 06:00:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-19 06:00:03       101 阅读
  3. 在Django里面运行非项目文件

    2024-02-19 06:00:03       82 阅读
  4. Python语言-面向对象

    2024-02-19 06:00:03       91 阅读

热门阅读

  1. LVS/DR配置

    2024-02-19 06:00:03       43 阅读
  2. 二叉树的统一迭代法#思路

    2024-02-19 06:00:03       42 阅读
  3. 课时37:脚本交互_脚本外交互_案例实践

    2024-02-19 06:00:03       46 阅读
  4. Postgresql源码(122)Listen / Notify与事务的联动机制

    2024-02-19 06:00:03       40 阅读
  5. 001:自动驾驶概述

    2024-02-19 06:00:03       35 阅读
  6. 【Ubuntu 22.04】解决Ubuntu 22.04终端行距过大的问题

    2024-02-19 06:00:03       56 阅读
  7. 图像处理与计算机视觉算法

    2024-02-19 06:00:03       42 阅读
  8. wsl内置Ubuntu使用 Dinky 与 Flink 集成

    2024-02-19 06:00:03       47 阅读
  9. [R] First Section Revision

    2024-02-19 06:00:03       43 阅读
  10. go内置库函数实现client与server数据的发送接收

    2024-02-19 06:00:03       53 阅读
  11. 【状态估计】深度传感器与深度估计算法(1/3)

    2024-02-19 06:00:03       48 阅读