美文网首页
High Performance实践

High Performance实践

作者: Addy_Zhou | 来源:发表于2017-03-15 23:53 被阅读4次

    Http

    accept-encoding

    在服务端开启gzip压缩,请求带有accept-encoding:gzip头的情况下,响应头返回Vary:Accept-Encoding,因为在浏览器和服务器之间会存在一个或多个缓存服务器,而有些缓存服务器的实现会忽略content-encoding头,通过采用Vary:Accept-Encoding头可以避免缓存服务器不知道返回客户端什么版本,是压缩版本还是非压缩版本;
    -- 具体可参加HTTP 协议中 Vary 的一些研究

    Etag & If-none-match、last-modified & if-modified-since

    If-none-match 设置在请求头中,制作一个有条件的请求。对于GET和HEAD请求类型来说,服务器在只要有一个资源的ETag不匹配 if-none-match给出的值数组的情况下,发回一个响应码为200的请求资源包;对于其他的请求方法,如果存在的资源的ETag不匹配if-none-match给定的值数组中的任何一个的话,则服务器受理请求;

    last-modified & if-modified-since是判断资源的最后修改时间来检测资源缓存的有效性的,而ETags和if-none-match可以是资源的任何一个属性,比如资源的MD5;

    当if-modified-since和if-none-match一块使用时,if-none-match优先判断,如果if-none-match匹配的情况下,再判断if-modified-since

    -- 参见
    If-None-Match
    If-Modified-Since

    相关文章

      网友评论

          本文标题:High Performance实践

          本文链接:https://www.haomeiwen.com/subject/lvkcnttx.html