浏览器的缓存机制,强缓存与协商缓存

浏览器缓存机制是为了提高网页加载速度和减轻服务器负担而设计的。他通过在本地存储资源的副本,以便在后续访问相同资源时可以更快地获取资源来实现这一操作。浏览器缓存分为两种类型:http缓存和本地存储

http缓存:

强缓存:浏览器在请求资源之前会首先检查本地缓存,并根据缓存的有效期来决定是否使用缓存。如果缓存有效,浏览器直接使用缓存,不向服务器发送请求

协商缓存:如果资源在缓存有效期内过期,浏览器会向服务器发送请求,但不会要求服务器返回整个资源。服务器会检查资源的修改日期或标识等信息,并根据情况返回新资源或告诉浏览器继续使用缓存

web存储:

LocalStorage、SessionStorage、Cookies

总结:浏览器缓存的好处包括减少网络请求次数、降低服务器负担、提高页面加载速度和用户体验。但缓存也可能导致问题,例如当服务器上的资源已更新但浏览器仍然使用旧版本的资源时,可能导致页面不一致或错误。开发者可以通过适当配置HTTP缓存头部和使用Web存储来控制浏览器缓存的行为,以满足特定的需求和业务逻辑

相关推荐
AI技术新视界21 小时前
LLM 提示词缓存(Prompt Caching)的秘密
人工智能·缓存·llm·prompt
lsc_blog2 天前
年底还在招的岗位,先确认缺口和到岗要求
git·缓存·ci/cd·职场和发展·github
xixiaoyunya2 天前
Redis缓存三大问题实战:穿透、击穿、雪崩,我用一个电商秒杀场景讲清楚
数据库·redis·缓存
我不会起名字3222 天前
Redis 从 0 到 1(二十三):一个热 key 打到 10 万 QPS——hotkey 与本地缓存的 Go 实现
redis·缓存·go·qps·hotkey
真上帝的左手3 天前
30. 技术专题-‌应用框架组件-缓存-Redis
数据库·redis·分布式·缓存·中间件
bksczm3 天前
C++Redis开发(Ubuntu 22.04)
数据库·redis·缓存
goehou3 天前
缓存该删还是该改,LLM 服务里的双写问题
redis·缓存·llm·一致性·系统设计
利威尔xu3 天前
Go IM 源码实战(14):本地缓存快 3000 倍,失效却难 10 倍
后端·缓存·微服务·面试·golang