首页 首页 >  文章资讯

Web前端性能优化教程02:使用内容分发网络

发布者:feixue2017    发布时间:2018-07-11 09:09:25    浏览次数:47次

基础知识


服务器离用户越近,HTTP请求的响应时间将更短。


CNAME:别名记录,当多个域名需要指向同一服务器IP,可以使用一个域名做A记录指向该服务器IP,然后让多个域名指向该A记录。


ICP:Internet Content Providor。


DNS:Domain Name System。


什么是内容分发网络?


CDN(Content Deliver Network)是一组分布在多个不同地理位置的Web服务器,通过将网站的资源发布到最接近用户的网络”边缘“,供用户就近取得所需内容。CDN可以看作一种缓存代理,主要用于对静态资源(如图片,css,js等)的缓存。


CDN的网络架构


CDN的网络架构主要分为中心和边缘两个部分,中心服务器主要负责DNS解析和全局负载均衡;而边缘服务器指异地节点,作为CDN分发的载体,包括负载均衡和高速缓存。边缘服务器的负载均衡负责缓存内容的负载均衡,保证节点的工作效率,同时还负责与中心服务器通信,实现整个系统的负载均衡。边缘服务器的高速缓存负责存储从客户源服务器获取的资源,并提供给本地用户访问。


CDN的工作原理


除了一些大型互联网公司拥有自己的CDN,其他公司基本都会选择CDN运营商合作。


所以作为ICP,需要把域名解释权交给CDN运营商,操作时ICP修改自己的域名解析部分,一般用CNAME的方式,将自己的静态资源域名指向一个CDN提供的CNAME。


而作为CDN运营商,需要对CNAME提供专用DNS解析,同时需要维护客户服务器的域名和IP地址映射列表。


CDN工作流程如下:


1.浏览器获得需要访问的资源的域名;


2.通过域名解析得到该域名指向CDN的一个CNAME;


3.为了获得IP地址,需要对CNAME进行域名解析,这时请求就会被发送到CDN的中心服务器,全局负载均衡通过预先设定的规则,同时根据用户访问的地理位置信息,把最合适的边缘服务器IP地址返回;


4.浏览器获得IP地址后,就向边缘服务器发出请求;


5.边缘服务器根据访问域名,首先搜索缓存,查看资源是否存在,存在则直接返回资源给浏览器,直接完成整个资源请求过程,否则就根据缓存内部的DNS解析得到资源实际IP地址(即客户的服务器IP地址),向该IP地址发起资源请求;


6.边缘服务器向客户服务器请求资源成功后,就把该资源加入本身的高速缓存中,并把资源发送给用户。


CDN的简单应用


其实CDN的使用并没有和我们想象中那么遥远,JQuery应该是当今Web开发领域使用最为广泛的js框架之一,很多时候我们的网站都需要引用一个jquery.min.js的引用,我们可以将这个js文件存储在自己的服务器,或者更好的选择:使用大公司的CDN服务提供的jquery.min.js. 微软和google都提供了jquery的CDN免费服务,你只需做的事情就是在项目中引用它们,就能享受CDN带来的便利。


天津国泰医院

【版权与免责声明】如发现内容存在版权问题,烦请提供相关信息发邮件至 335760480@qq.com ,我们将及时沟通删除处理。 以上内容均为网友发布,转载仅代表网友个人观点,不代表平台观点,涉及言论、版权与本站无关。