什么是Web缓存/代理服务器技术
就是在不访问服务器的情况下,对客户机的请求进行响应。
优点:
1.缩短客户请求的响应时间
2.减少组织/机构的流量
3.在大范围内(Internet)实现有效的内容分发
Web缓存/代理技术实现
我们知道http协议是无状态的,所以如果有连续的请求访问同一个网页,他就会一直重复发送,这个时候,如果有一个“有状态”的服务器,对之前的请求有记录,那么它在第二次以后的请求中,就可以在缓存中直接发送给客户。
大概就像这个样子:
工作过程:
1.客户机像代理服务器发送请求。
2.如果代理服务器的缓存中有请求对象,就直接返回响应,如果没有,就向服务器发送请求,服务器发回响应,缓存服务器保存并且向客户机发回响应。
web缓存/代理服务器技术中的更新问题
1、条件GET请求报文
①使用GET方法;②请求报文中包含一个“If-Modified-Since:”首部行。
2、工作原理
①代理缓存器(proxy cache)发送请求报文给Web服务器。
②Web服务器发送具有被请求对象的响应报文给缓存器,报文带有Last-Modified:最后修改时间;缓存器存储被请求对象和最后修改时间。
③当用户经过该缓存器请求同一个对象时,缓存器发送一个条件GET执行最新检查,该报文包含首部行“If-Modified-Since:最后修改时间”。
④Web服务器向缓存器发送响应报文。如果该对象没有更新,则返回一个带有304状态码 Not Modified的报文,没有包含对象;如果对象已更新,则返回一个带有被请求对象的报文。