为何使用多域名存储网站资源会更有效?

1、CDN缓存更方便

(CDN是什么?

         http缓存是浏览器端缓存,cdn是服务器端缓存。

         举个例子来说明cdn的作用:cdn就是代理。厂家给商家发货,你从商家买货,商家就是cdn,很方便。

 CDN怎么缓存?

          和Http类似,客户端请求数据时,先从本地缓存查找,如果被请求数据没有过期,拿过来用,如果过期,就向CDN边缘节点发起请求。CDN便会检测被请求的数据是否过期,如果没有过期,就返回数据给客户端,如果过期,CDN再向源站发送请求获取新数据。和买家买货,卖家没货,卖家再向厂家进货一个道理^^。

        CDN边缘节点缓存机制,一般都遵守http标准协议,通过http响应头中的Cache-Control和max-age的字段来设置CDN边缘节点的数据缓存时间。

)

2、突破浏览器并发限制

   因为浏览器对请求静态资源文件有一个并发数量限制, 每次只能请求同一个域名下的若干个资源文件(根据浏览器的不同会有差异), 如果把资源文件存放在多个不同的域名下面就会突破浏览器的限制

 

3、节约cookie带宽

   用户的每次访问,都会带上自己的cookie ,挺大的。因为在很多时候,对于页面资源的请求我们是不需要携带用户的cookie,比如浏览图片,视频等信息,而用户登录时才需要用户cookie信息,此时就可以选择将图片,视频等资源放在专门存放静态资源的域名下,节省在发送请求时,传递cookie需要的带宽

假如twitter 的图片放在主站域名下,那么用户每次访问图片时,request header 里就会带有自己的cookie ,header 里的cookie 还不能压缩,而图片是不需要知道用户的cookie 的,所以这部分带宽就白白浪费了。
 

4、节约主域名的连接数,优化页面响应速度

   因为老的浏览器(IE6是典型),针对同一个域名只允许同时保持两个HTTP连接。将图片等资源请求分配到其他域名上,避免了大图片之类的并不一定重要的内容阻塞住主域名上其他后续资源的连接(比如ajax请求)。

5.对于UGC的内容和主站隔离,防止不必要的安全问题

正是这个原因要求用户内容的域名必须不是自己主站的子域名,而是一个完全独立的第三方域名。

你可能感兴趣的:(为何使用多域名存储网站资源会更有效?)