CDN及缓存小讲.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CDN及缓存小讲

CDN及缓存小讲 一个访问如何完成? 浏览器发起请求最基本的几项: Host、URL、Method 扩展项: Accept、Referer、Cookie、User-Agent等等 Host处理 如果是IP,直接走路由找IP 如果是域名: 1、查找本机hosts和DNScache Win:C:\WINDOWS\system32\drivers\etc、hosts Linux:/etc/hosts 2、向localDNS发送resolve请求 localDNS处理 TTL(Time To Live) DNS都有一个TTL配置,以我们现在使用bind9为例: 如果LocalDNS上正好forwarder过这个Host,且TTL没有过期,那么直接返回结果。 localDNS处理 否则LDNS将通过TCP53向它所知的其他DNS发送查询 递归查询、迭代查询 最终归到根服务器“.” 真正的域名最后都有一个“.”,如下: 解析结果 如果DNS应答的结果是A记录,那么已经获得了Host的IP,可以发起请求了; 如果是C记录,那么得到的还是一个域名,继续重复上面的过程,直到获得IP为止。 服务器响应 如果没有缓存,那么请求最后的“旅程”可能就是这样: CDN原理 GSLB(Gobal Server Load Balance) 最基本的GSLB控制器,就是一个智能DNS 以bind9为例,通过acl和view完成该功能 ACL acl CNCIP{ /21; /14; /22; /17; /24; …… } (GSLB会分得很细,我们自己双线,所以只区分CT和CNC) VIEW view CNC { key cnc { algorithm hmac-md5; secret mSzVmAeYKMnUplLTbyAQZw==; }; match-clients { key cnc; 11/32; !3/32; CNCIP; }; zone in { type master; file -bj; allow-query { any;}; // allow-transfer { our-nets; }; }; -bj …… cnccdn IN A 2 IN A 2 IN A 8 …… 稍微完善的GSLB,还会对这些服务器的负载、链路状况进行监控,随时对A记录进行微调~(Scalable Service Routing) 缓存服务器 缓存服务器的目的 1、优化传输路由 2、减轻源站压力 优化路由 电信、网通、联通、移动、教育网、广电、铁通、卫通…中国互联网相当复杂,同在北京,网络位置却隔得很远很远~ CDN在边缘节点上再构建一层专用光纤链路,完成全网的快速分发。 蓝讯节点示意图 帝联节点示意图 减轻源站压力 对于小文件(一般定义为平均1MB以下,常见网页、小图片等),一般采用被动抓取的方式; 对于大文件(即平均1MB以上,游戏下载、音视频文件等),一般采用主动推送的方式; 对于流媒体视频点播、直播,针对不同格式有各自的解决方案。 SQUID 我们目前在CDN平台加速的,都属于小文件类别。 小文件缓存加速,最常见的几个软件是squid/nginx/varnish,其次是lighttpd(mod_cache)/apache(traffic_server)等等 因为有世界最大的CDN商Akamai多年的支持,squid成为运用最广泛的缓存软件,可以说是事实上的标准。 我们在内部重大系统上,也使用了squid分担apache/nginx的压力。 Squid处理流程 我们可以通过开启debug模式,很清楚的看到一个url请求到达squid后的处理全过程。 1、tcp建连,占用文件描述符 2、读取url请求,在内存中创建相应的Entry空间 3、检查请求ACL匹配(内外2种) 4、检查重定向规则 5、读取匹配的缓存规则 6、检查是否命中现有缓存文件 回源请求文件 7、计算过期时间 8、检查响应ACL匹配 9、传输文件给客户端 10、将可缓存的新文件存入内存 11、空闲(或触发阀值)时清理内存和磁盘上不用的文件 读取url Squid与普通web服务器第一个显著不同,squid不会把host/uri?strings分开处理,在整个entry处理过程中,squid是针对一条完整url的。 GET /index.html HT

文档评论(0)

zhuwenmeijiale + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7065136142000003

1亿VIP精品文档

相关文档