欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

javascript - 为何不少网站都使用一个另外的域名(例如xxstatic.com)来访问静态资源?

程序员文章站 2022-05-24 13:36:20
...
比如百度,使用bdstatic.com或bdimg.com来访问静态资源。这样做有什么意义吗?直接static.baidu.com不好吗?何必浪费一个域名呢?

回复内容:

比如百度,使用bdstatic.com或bdimg.com来访问静态资源。这样做有什么意义吗?直接static.baidu.com不好吗?何必浪费一个域名呢?

  • 二级域名,一般是做了CDN缓存,加快客服端访问速度。

  • 另外浏览器并发加载一个域名的资源有限。

第一为了防止域名cookie作用域污染,这个不用多说

第二浏览器限制了同域请求并发数(6个),比如有10个静态资源在一个域名下,第一次只会加载6个,加载完了才会加载另外四个

东西太多了,按照类别分块,缓解单个服务器的压力

我是这么认为的

感觉主域名还有其他的用处吧!毕竟静态文件这种东西不需要看域名!

域名有什么好浪费不浪费的呢。。值钱的是服务器啊。。

浏览器有同域名的并发数限制。不同浏览器不一样,资源太多会堵塞,加载很慢。
另外一般静态资源都会做CDN,方便管理。

而你举例说的baidu的俩域名,也有可能是历史原因,或者不同团队之间,使用了多个域名

主域名下会有很多cookie,请求的时候会被带上,而请求静态资源的时候是不需要这些cookie的,白白浪费流量,。同时另起一个域名也方便做cdn缓存。还有浏览器并发加载的考虑。

说下我以前一个单位的网站,就是动态语言和静态资源分开管理的(静态资源,我们放在七牛上,主服务器是阿里云的)。有以下原因

  1. 减少了成本,静态资源存放的地方价格要比动态资源的便宜。

  2. 减少了动态语言那边服务器的负荷,存放动态语言的服务器,还可能运行其他的程序,不只是只有这个网站。

  3. 也就是楼上的,提升用户访问网站的效率。

  4. 也有容错性吧,主服务器瘫痪了,静态资源还可以加载,不至于全部一片白吧。

  5. ...楼上都有。