简述http缓存技术

Web缓存(web cache)也叫做代理服务器(proxy server),它与服务器一样,是一个网络实体具有自己的磁盘存储空间,并在该空间保存最近所请求过的对想的拷贝
简述http缓存技术_第1张图片
web缓存分为私有缓存和公有缓存,私有缓存是提供给个人用户的,而像上图这种其实是一种公用缓存,可以配置用户的浏览器,使用户的所有HTTP请求首先指向Web缓存器。一旦配置了缓存器,每个浏览器对一个对象的请求首先被定向到Web缓存
例如,假设浏览器正在请求对象 http://www.someschool.edu/campus.gif,那么将会发生如下情况:

  1. 浏览器建立一个到Web缓存的TCP连接,并向Web缓存中的对象发送一个HTTP请求
  2. Web缓存检查本地是否存储了该对象的拷贝。若有,Web缓存则用HTTP响应报文向客户端返回该对象
  3. 若Web缓存没有该对象,它就与该对象的初始服务器(如www.someschool.edu)打开一个TCP连接。Web缓存在TCP连接上发送获取该对象的HTTP请求。收到请求后,初始服务器向Web缓存发送具有该对象的HTTP响应
  4. 当Wen缓存接收到该对象时,它在本地存储空间存储了一份拷贝,并用HTTP响应报文向客户端发送该拷贝

另外,考虑到存放在缓存中的对象拷贝可能是陈旧的,即该对象在服务器中已经被修改过了。HTTP采用一种条件GET方法来解决了这个问题。如果请求报文使用GET方法,并且包含一个if-modified-since: 首部行,那么这个HTTP请求报文就是一个条件GET请求报文。根据与Last-Modified时间对比,就可以知道某对象的拷贝是否已经被修改过了。

你可能感兴趣的:(计算机网络)