这种技术用于实现在不访问真正web服务器的前提下满足客户端的http请求。
通过这种方法缩短了客户请求响应时间,减少了机构/组织流量,在大范围内Internet实现有效的内容分发。
大致思路是在客户端和服务器之间架设代理服务器,用户先访问代理服务器,浏览器向代理服务器发送http请求,如果访问目的不在代理服务器,再向原服务器发送http请求,把结果返回给客户端并保存缓存。一般来说缓存命中率在0.2~0.7之间。
缓存服务器既充当客户端,也充当服务器。
条件性get
用户访问缓存服务器,那么如何保证缓存服务器中的内容和真正服务器的内容是一致的呢?这就要使用条件性get的方法。
该方法大致思路为:
缓存在请求消息中声明所持版本的日期——if_modified_since:,服务器端检查日期,若缓存是最新的,响应消息中不包含对象,返回http1.0 304 not modified。