浏览器缓存及应用Cache-Control(用于本地缓存),Expires(用于本地缓存),Last-Modified(协商缓存),Etag(协商缓存)

本文深入解析了HTTP缓存机制,包括Cache-Control、Expires等头部字段的作用及应用场景,并通过实例展示了不同浏览器操作对缓存的影响。


1.与浏览器缓存相关的http headers

  Cache-Control(用于本地缓存),Expires(用于本地缓存),Last-Modified(协商缓存),Etag(协商缓存)

Cache-Control:指定请求和响应遵循的缓存机制。在请求消息或响应消息中设置Cache- Control并不会修改另一个消息处理过程中的缓 存处理过程。请求时的缓存指令包括no-cache、no-store、max-age、max-stale、min-fresh、only-if- cached,响应消息中的指令包括public、private、no-cache、no-store、no-transform、must- revalidate、proxy-revalidate、max-age。各个消息中的指令含义如下:
Public指示响应可被任何缓存区缓存。
Private指示对于单个用户的整个或部分响应消息,不能被共享缓存处理。这允许服务器仅仅描述当用户的部分响应消息,此响应消息对于其他用户的请求无效。
no-cache指示请求或响应消息不能缓存
no-store用于防止重要的信息被无意的发布。在请求消息中发送将使得请求和响应消息都不使用缓存。
max-age指示客户机可以接收生存期不大于指定时间(以秒为单位)的响应。
min-fresh指示客户机可以接收响应时间小于当前时间加上指定时间的响应。
max-stale指示客户机可以接收超出超时期间的响应消息。如果指定max-stale消息的值,那么客户机可以接收超出超时期指定值之内的响应消息。

Expires:定义与http 1.0,是一个绝对时间,作用相同于max-age,我理解的应该是这样nowTime+maxAge=expires;(用于本地缓存)

Last-Modified:被访问的资源的最近一次更改时间(http1.0)

Etag:资源的一个唯一标志(http1.1)

2.我们一般的浏览器操作

  在浏览器(如IE)中有几种操作,如下: 
  Ctrl + F5 
  浏览器将绕过本地缓存、协商缓存,让服务器重新发送请求的资源。 
  F5 
  浏览器将绕过本地缓存,将使用协商缓存来请求资源。 
  转向或回车(火狐下回车直接跳过本地缓存和协商缓存2012/02/29)
  浏览器将使用本地缓存、协商缓存。 

3.客户端缓存的应用 

http://localhost/car_comment/trend_10_w.html

线上地址 

http://data.auto.sina.com.cn/car_comment/koubeiTrend.php?subid=10&type=w


  程序响应结果

2.数据对比

A)未使用客户端缓存的响应头

F5Ctrl+F5、转到,返回结果一样

Date

Thu, 25 Aug 2011 09:13:29 GMT

Server

Apache/2.2.8 (Win32) PHP/5.2.6

X-Powered-By

PHP/5.2.6

Content-Length

1011

Keep-Alive

timeout=5, max=99

Connection

Keep-Alive

Content-Type

image/png


可见http status 都是返回200 都没有使用浏览器缓存

B)使用客户端缓存的响应头

转到

Date

Thu, 25 Aug 2011 09:27:24 GMT

Server

Apache/2.2.8 (Win32) PHP/5.2.6

X-Powered-By

PHP/5.2.6

Cache-Control

max-age=23556

Expires

Thu, 25 Aug 2011 16:08:00 GMT

Last-Modified

Tue, 23 Aug 2011 16:08:00 GMT

Content-Length

1011

Content-Type

image/png


http status 200,应用浏览器缓存1011B

解释:

http Reponse 中的

              Date    Thu, 25 Aug 2011 09:27:24 GMT

              Cache-Control max-age=23556  //http 1.1

                  Expires  Tue, 23 Aug 2011 16:08:00 GMT //http1.0

此种情况下的缓存若还没有过期,则被浏览器使用

F5刷新

Date

Thu, 25 Aug 2011 09:32:09 GMT

Server

Apache/2.2.8 (Win32) PHP/5.2.6

X-Powered-By

PHP/5.2.6

Cache-Control

max-age=23271

Expires

Thu, 25 Aug 2011 16:08:00 GMT

Last-Modified

Tue, 23 Aug 2011 16:08:00 GMT

Content-Length

1011

Content-Type

image/png


http status 304没有发生变化,应用浏览器缓存1011B

http  reponse中含有

              Last-Modified    Tue, 23 Aug 2011 16:08:00 GMT

再下一次请求相同资源时

             http request中含有

             If-Modified-Since  Tue, 23 Aug 2011 16:08:00 GMT

             如果是静态化的资源,服务器会检查文件的最后修改时间并与客户端请求的修改时间做对比,如果未发生改变则返回304,验证结果为客户端缓存可用,浏览器使用客户端资源。动态生成的响应服务器无法计算最后修改时间,只能程序自己计算,并返回相应的结果

如果后端数据未发生变化则返回304 。则只返回http headers,浏览器载入缓存                    

F5+Ctrl刷新或者第一次打开

Date

Thu, 25 Aug 2011 09:33:37 GMT

Server

Apache/2.2.8 (Win32) PHP/5.2.6

X-Powered-By

PHP/5.2.6

Cache-Control

max-age=23183

Expires

Thu, 25 Aug 2011 16:08:00 GMT

Last-Modified

Tue, 23 Aug 2011 16:08:00 GMT

Content-Length

1011

Keep-Alive

timeout=5, max=100

Connection

Keep-Alive

Content-Type

image/png


强制服务端返回最新结果Catch-Control no-cache;Param no-cache

Host

localhost

User-Agent

Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN; rv:1.9.2.20) Gecko/20110803 Firefox/3.6.20

Accept

text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Accept-Language

zh-cn,zh;q=0.5

Accept-Encoding

gzip,deflate

Accept-Charset

GB2312,utf-8;q=0.7,*;q=0.7

Keep-Alive

115

Connection

keep-alive

Pragma

no-cache

Cache-Control

no-cache

3.提升服务器性能


没有使用浏览器缓存时的服务器吞吐量 235.87/


启用客户端缓存后的服务器吞吐量(Requests per second)906.91/秒 mean表示平均值,提升了近3.8被,再看一下纯静态html时的服务器吞吐量


是我们使用第一种方式的9.96被,是启用浏览器缓存的2.59倍,所以内容不再更新的页面还是直接发布为静态页面比较好

4.页面响应时间

没有启用缓存时的响应时间分布


一共耗时0.038秒,Wait时间就是我们服务器端执行时间和网络延时,本地测试基本可以忽略网络延时,大概为0.033.

启用缓存后的压面响应时间分布


一共耗时0.009秒,Wait时间就是我们服务器端执行时间和网络延时,本地测试基本可以忽略网络延时,大概为0.005.提高的速度还是很明显的


内容概要:本文提出了一种基于改进扩散模型的高海拔地区新能源高波动出力场景生成方法,并提供了完整的Python代码实现。该方法针对高海拔地区风能、光伏等新能源出力波动剧烈、不确定性高的特点,通过优化扩散模型的结构与训练策略,有效捕捉历史数据的概率分布特征与时序相关性,从而生成高质量、多样化的出力场景。文中详细阐述了模型的数学推导、网络架构设计、损失函数优化及采样算法改进,并通过实验证明其在拟合精度、场景多样性与稳定性方面优于传统生成模型,为电力系统在高比例新能源接入下的规划、调度与风险评估提供了可靠的场景输入支持。; 适合人群:具备一定Python编程能力和机器学习基础,从事新能源发电预测、电力系统分析、智能优化、场景生成等方向研究的科研人员、高校研究生及工程技术人员。; 使用场景及目标:①用于高海拔地区风电、光伏出力的不确定性建模与多场景生成;②支撑含高渗透率新能源的电力系统随机优化调度、鲁棒决策与风险评估;③为相关学术研究、论文复现与算法改进提供可运行的技术方案与代码基础; 阅读建议:建议读者结合所提供的完整资源(代码、数据集、说明文档)进行实践操作,重点关注扩散模型的前向加噪与反向去噪过程的设计细节,以及如何将其适配于新能源时序数据的生成任务,通过参数调优与对比实验深入理解模型的生成机制与性能边界。
内容概要:本文围绕基于静态约束法的配电网电动汽车接入容量评估展开研究,提出了一种在新型电力系统背景下评估主动配电网对电动汽车承载能力的方法。研究通过构建数学模型,结合潮流计算与关键约束条件(如电压越限、线路过载等),量化分析配电网可承受的最大电动汽车充电负荷容量,旨在识别规模化电动汽车接入带来的潜在运行风险,并为电网规划与运行提供科学依据。文中配套提供了完整的Matlab代码实现,便于仿真验证与结果复现。此外,该研究与分布式光伏承载力评估、电动汽车可调能力分析等方向形成技术联动,展现了多主题协同的研究体系。; 适合人群:具备电力系统分析基础理论知识及Matlab编程能力的高校研究生、科研机构研究人员,以及从事新能源并网、智能配电网规划与运行等相关领域的工程技术人员。; 使用场景及目标:①用于学术研究中的模型复现与论文撰写支撑;②评估实际配电网中电动汽车大规模接入的可行性与安全边界,指导充电基础设施布局;③作为高校教学案例,帮助学生深入理解电网承载力评估的核心原理、建模方法与仿真技术; 阅读建议:建议结合文中提及的相关研究方向(如二阶锥规划、多面体聚合方法等)进行对比学习,充分利用所提供的Matlab代码与网盘资料开展仿真实验,重点关注约束条件的设定逻辑与潮流计算模块的实现细节,以深化对评估模型机理与工程应用价值的理解。
内容概要:本文围绕“考虑隐私保护的分布式联邦学习电力负荷预测研究”展开,提出了一种基于Python实现的联邦学习框架,旨在解决居民或行业电力负荷预测中用户电表数据隐私泄露的风险。该研究通过构建分布式机器学习模型,使各参与方在不共享原始数据的前提下协同训练全局模型,有效实现了数据“可用不可见”。文中详细阐述了联邦学习的整体架构设计、本地模型训练流程、参数加密传输与安全聚合机制,并结合差分隐私等技术进一步增强系统的隐私保护能力。同时,研究利用真实电力负荷数据集进行了实验验证,展示了方法在预测精度与隐私保障之间的良好平衡,并提供了完整的代码实例与复现指南,便于后续研究与应用拓展。; 适合人群:具备一定机器学习基础和电力系统背景知识,从事智慧能源、隐私计算或人工智能相关方向研究的研究生、科研人员及工程技术人员。; 使用场景及目标:① 实现跨区域、跨主体的电力负荷协同预测,打破数据孤岛;② 在确保用户用电数据隐私安全的前提下提升负荷预测准确性;③ 推动联邦学习在智能电网、需求响应、虚拟电厂等场景中的实际部署与应用。; 阅读建议:建议结合文中提供的Python代码与网盘资料进行动手实践,重点关注联邦学习的通信轮次设计、模型聚合算法(如FedAvg)的实现细节以及差分隐私噪声添加策略,深入理解其对模型性能与隐私强度的影响,为进一步优化与创新奠定基础。
VDA_Band_19.1_3rd edition_2026 English Inspection of Technical Cleanliness 内容概要:本文档为德国汽车工业协会(VDA)发布的第三版《技术清洁度检验:功能相关汽车部件的颗粒污染检测》(VDA 19.1),系统规范了汽车行业中零部件技术清洁度的检测方法与流程。文件涵盖从取样、提取、过滤到分析的全流程标准化操作,重点更新了干法提取(如 Stamp Test 和刷吸法)、小于50µm颗粒的检测、光学子系统和SEM/EDX标准分析方法,并引入统一材料分类体系以提升结果可比性。同时明确了“标准分析”与“自由检验”的区别,前者用于高兼容性检测,后者允许客户与供应商协商定制参数。文档还强化了对非可测组件的技术清洁保障、测量不确定度评估及方法验证的要求,并提供了多个实际案例支持应用落地。; 适合人群:适用于汽车制造业中从事质量控制、工艺开发、供应商管理及相关检测实验室的技术人员和管理人员,尤其适合具备一定质量管理或洁净度检测基础的专业人员。; 使用场景及目标:①用于制定和执行零部件清洁度检测标准;②指导 incoming/outgoing 检验及生产过程监控;③支持失效分析与质量改进项目;④作为企业内部审核和技术交流的依据; 阅读建议:建议结合VDA 19.2及其他相关标准配套使用,重点关注各章节中的起始参数设定、方法选择逻辑及附录中的检查表示例,在实际操作中同步开展方法验证与人员培训,确保检测结果的有效性和可追溯性。
内容概要:本研究聚焦于电动汽车(EV)作为灵活可调资源的能力评估,提出了一种基于多面体聚合与闵可夫斯基和的数学建模方法,用以精确刻画大规模电动汽车集群的可调能力范围。通过将单辆电动汽车的充放电行为抽象为几何空间中的多面体可行域,并利用闵可夫斯基和实现对群体可行域的高效聚合,从而构建出能够反映整体调节潜力的统一数学表达。该方法在Matlab平台上实现了完整的仿真代码,支持对不同场景下电动汽车集群的上、下调能力进行量化评估,为电网调度、需求响应及电力市场机制设计提供了理论依据与工具支撑。; 适合人群:具备电力系统分析、优化理论及Matlab编程基础的研究生、科研人员及从事新能源、智能电网相关工作的工程师。; 使用场景及目标:①用于评估大规模电动汽车接入背景下系统的灵活性资源潜力;②支撑含高比例可再生能源的电力系统调度与规划决策;③为需求响应项目中EV聚合商参与电力市场提供能力申报的技术手段;④作为教学案例帮助理解集合运算在电力系统中的应用。; 阅读建议:学习者应结合Matlab代码深入理解多面体建模与闵可夫斯基和的实现细节,建议从单车模型入手逐步过渡到集群聚合,并尝试调整参数(如数量、SOC分布、功率限制)观察聚合结果的变化,以增强对模型特性的掌握。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值