浏览器缓存
缓存读取原理:先从内存中查找相应得缓存,若有则读取,否则从硬盘中查找,若有则读取,反之重新网络请求。
一,作用
1,减少冗余得数据传输,节省了网络带宽。从而更快得加载页面;
2,降低了服务器得要求,从而服务器更快得响应。
二 ,资源文件缓存得位置(分为两个地方)
1,内存中(memory cache)退出进程数据被清除,读取速度比硬盘快,内存有限,一般存储脚本,字体,图片
2,硬盘中(disk cache)退出进程数据不会被清除 非脚本存储,如css;
三,两种缓存方式(强制缓存和协商缓存)
1,强制缓存:浏览器在加载资源的时候,会先根据本地缓存资源的header中的信息(Expires 和 Cache-Control)来判断是否需要强制缓存。
如果命中的话,则会直接使用缓存中的资源。否则的话,会继续向服务器发送请求。
2,协商缓存:客户端向服务器端发出请求,服务端会检测是否有对应的标识,如果没有对应的识,服务器端会返回一个对应的标识给客户端, 客户端下次再次请求的时候, 把该标识带过去,然后服务器端会验证该标识,如果验证通过了,则会响应304,告诉浏览器读取缓存。如果标识没有通过,则返回请求的资源
那么协商缓存的标识又有2种:ETag/if-None-Match 和 Last-Modified/if-Modify-Since