美文网首页
从HTTP响应头看各家CDN缓存技术

从HTTP响应头看各家CDN缓存技术

作者: 守望者_1065 | 来源:发表于2017-10-23 17:29 被阅读100次

    从HTTP响应头看各家CDN缓存技术

    从HTTP响应头看各家CDN缓存技术

    由于国内各家电信运营商互联互通的壁垒,CDN作为互联网用户加速的最后一公里,扮演了很重要的角色。

    在各家公司大谈的异地多活容灾上也承担了用户分流的重任,看看各家用的东西,结合一些网上的公开资料,也能管中窥豹。

    传统的国内CDN厂家有:帝联,网宿,蓝汛,快网等

    新兴的互联网公司有自家产品对外输出型和创业公司细分型:BAT都有此产品,还有七牛,又拍,微软azure等

    美国龙头:Akamai,美国市场大哥,Apple用的也是这个,但Apple的在线服务这么烂,真怀疑是不是Apple把Akamai带坑里了。

    本文只展示响应头,有兴趣自己深挖。

    淘宝

    server:Tenginestatus:200timing-allow-origin:*via:cache15.l2et15-1[0,200-0,H],cache35.l2et15-1[0,0],cache3.cn286[0,200-0,H],cache8.cn286[11,0]x-cache:HITTCP_MEM_HITdirn:20:727080716x-swift-cachetime:31535998x-swift-savetime:Fri, 19Aug2016 02:55:13GMT

    不用说,淘宝用的是自家阿里CDN, 走Tengine, 返回的响应很友好,甚至告诉你是从内存命中的。

    x-swift指明了使用了的具体热点缓存技术。

    关于阿里云CDN,有很多公开介绍,例如:

    文章一:阿里云CDN技术演进之路http://www.slideshare.net/jos...

    文章二:研究下淘宝的swift热点缓存迁移的事

    via:cache46.l2et2[0,200-0,H],cache60.l2et2[0,0],cache7.cn286[0,200-0,H],cache8.cn286[3,0]x-cache:HITTCP_HITdirn:11:60349972x-swift-cachetime:31535950x-swift-savetime:Tue, 28Jun2016 04:04:29GMT

    根据阿里云官网解释:

    若:X-Cache:HIT TCP_MEM_HIT 表示命中缓存

    若:X-Cache:MISS TCP_MISS 则表示未命中缓存

    微信

    腾讯CDN节点:

    Server:Qnginx/1.1.1X-Cache-Lookup:HitFromDisktankX-NWS-LOG-UUID:406395d0-7cb8-4630-99cf-8208d04e7750

    很明显,这里告诉大家CDN命中了磁盘缓存上的数据。

    一些网上资料查到的解释:

    X-Cache-Lookup:Hit From MemCache 表示命中CDN节点的内存

    X-Cache-Lookup:Hit From Disktank 表示命中CDN节点的磁盘

    X-Cache-Lookup:Hit From Upstream 表示没有命中CDN

    腾讯CDN起步可能会晚一点,Qcon上一个公开资料:

    CDN架构技术之道http://www.infoq.com/cn/prese...

    腾讯还与小米合作,在硬盘版小米路由上推出了一个插件,叫腾讯会员兑换,本质上就是利用小米路由用户上的硬盘存储一部分内容,上传给需要用的用户,由腾讯计算收益,盘活了家里闲时的网络资源。

    网易云音乐

    Server:nginxX-Via:1.1ngdianxin90:9(CdnCacheServerV2.0)

    网易太低调,最近也开始搞网易云产品了,但基本查不到什么公开资料,从响应头看似乎就是直接用的nginx。

    新浪微博

    Content-Type:image/gifSINA-LB:aGEuNDEuZzEuc2h4LmxiLnNpbmFub2RlLmNvbQ==SINA-TS:ZGFkYzk4Y2UgMCAwIDAgOCAwCg==Via:http/1.1 ctc.ningbo.ha2ts4.70 (ApacheTrafficServer/4.2.1.1[cRs f ])X-Via-CDN:f=Edge,s=ctc.ningbo.ha2ts4.70,c=115.231.82.33Age:1X-Via:1.1zjjhdx33:3(Cdn Cache Server V2.0),1.1tzhoudxin37:5(Cdn Cache Server V2.0)Connection:keep-alive

    这个返回了Cdn Cache Server V2.0,有多家公司都返回了这个,不知道这是个啥玩意,是不是个开源通用产品呢?Squid Varnish Nginx?

    segmantfault:

    命中

    via:T.101203.R.1, M.ctn-zj-lna-204x-cache:HIT(R) from ctn-zj-lna-204x-request-id:c239b9ae8ec9f83030bbdfaabcfa8fb4x-source:U/200, G/200

    缓存MISS

    via:T.101195.N.1,T.101163.R.1,V.mix-hz-fdi-163,M.ctn-zj-lna-200x-cache:MISS(S)fromctn-zj-lna-200x-request-id:724565e217e01e9f60e9f1b74aecedb3

    在ctn-zj-lna上缓存没有命中,这个ctn-zj是个CDN集群么?

    七牛

    访问该图片:http://7xt44n.com2.z0.glb.qin...

    Response header返回:

    X-Log:mc.g;IO:1/304X-Qiniu-Zone:0X-Reqid:90oAABxCoNMaw2wUX-Via:1.1dxxz44:2(Cdn Cache Server V2.0),1.1ngdianxin42:6(Cdn Cache Server V2.0)

    用的就是自家产品。

    唯品会

    Server:vipshop/VbibTransfer-Encoding:chunkedVip-Cache:HITx-amz-delete-marker:falseX-Via:1.1xxxz53:0(CdnCacheServerV2.0),1.1zhdx34:6(CdnCacheServerV2.0)

    看Server的响应头,似乎也应该是自家搭建的CDN,显示了命中与否。

    相关文章

      网友评论

          本文标题:从HTTP响应头看各家CDN缓存技术

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