今天看书时,某句话让我产生一个疑问,为什么静态资源要放在一个或者若干个独立的域名之下?我当时脑海中首先想到的就是为了动静分离,减轻web服务器压力,但是仔细一想不太对,如果仅是为了这个原因,大可不必启用那么多一级域名,用若干二级域名不是更好?于是带着这个疑问,拜访了搜索引擎。果然不出所料,原因不止这一个,现整理出来,作为备忘。

1、启用新的一级域名,每次请求浏览器不会携带cookie。这对于cookie内容比较大,并且流量大的网站会省去不少宽带费用。同时这也解惑了为什么不用二三级域名。

2、动静分离。静态资源与动态内容分离,有利于部署于CDN。

3、HTTP协议对同一个域名的同时下载线程数有限制。主要是为了优化下载速度,防止同一域名下下载线程数过多,导致下载速度变慢。各个浏览器都会遵守这个规定,但是限制的数目可能不一致。基于这个原因,可将资源部署于不同的域名,以达到最大化并发下载。

4、静态资源独立部署,为全局产品服务。这属于业务划分的范畴了。比如taobao.com和tmll.com都会用到tbcdn.cn上的静态资源,这些资源不必从属于某个产品。

5、接第4点原因,有利于最大化利用客户端缓存。比如访问taobao.com,缓存了tbcdn.cn上的某个js文件,之后再访问tmll.com时,也用到此js文件,不必再从tbcdn.cn上下载,直接用客户端缓存即可。

  最后,这样做的同时,就已经减轻了每台服务器的压力,服务器越多,每个服务器压力就越小。当然,这需要一个平衡。

我们仍未知道那天所看见的花的名字

转载于:https://www.cnblogs.com/waycool/p/7101236.html

静态资源放置于独立域名之下相关推荐

  1. 静态资源放置于独立域名之下的好处

    注:独立域名指的是一级域名而不是二级或三级域名. 1.启用新的一级域名,每次请求浏览器不会携带cookie.这对于cookie内容比较大,并且流量大的网站会省去不少宽带费用. 当浏览器向服务器请求一个 ...

  2. 服务器上Nginx部署静态资源(含域名绑定)

    Nginx 应用场景: 1.http 服务器.Nginx 是一个 http 服务可以独立提供 http 服务.可以做网页静态服务器. 2.虚拟主机.可以实现在一台服务器虚拟出多个网站.例如个人网站使用 ...

  3. SpringMVC REST 风格静态资源访问配置

    1 在web.xml中使用默认servlet处理静态资源,缺点是如果静态资源过多,则配置量会比较大,一旦有遗漏,则会造成资源无法正常显示或404错误. <!-- 静态资源访问控制 -->& ...

  4. web静态资源访问规则||webjars的访问配置——webjars是maven库里面对css js image打的一个jar包

    Html css js image  txt   web项目中 放在 Webapp 在springboot项目中  静态资源放置的位置 Springboot默认的静态资源目录 (1)在src/main ...

  5. vue 项目引用static目录资源_Vue2.0项目入门 — 静态资源目录src/assets和static/区别...

    rose.png 你应该注意到了,在项目结构上我们有静态资源两个目录:src/assets和static/.他们之间有什么区别? 通过webpack处理的资源 首先我们需要了解webpack如何处理静 ...

  6. Web开发静态资源处理---SpringBoot

    Web开发静态资源处理 使用SpringBoot的步骤: 1.创建一个SpringBoot应用,选择我们需要的模块,SpringBoot就会默认将我们的需要的模块自动配置好 2.手动在配置文件中配置部 ...

  7. 请求nginx静态资源报403

    [README] 请求nginx静态资源报403: [1]原因 静态资源防止在某个家目录下,如 /root 目录下 [2] 解决方法1 nginx.conf 文件没有指定用户 # user nobod ...

  8. springboot指定首页(静态资源导入)

    ResourceProperties小小的源码分析 1. 静态资源该放在哪里? 2. 首页该如何自动展示? 1. 静态资源该放在哪里? springboot 集成了spring-webmvc,这个都是 ...

  9. spring boot 2.x静态资源会被HandlerInterceptor拦截的原因和解决方法

    转载:https://my.oschina.net/dengfuwei/blog/1795346 spring boot 2.x静态资源会被HandlerInterceptor拦截的原因和解决方法  ...

最新文章

  1. Twisted入门教程(3)
  2. 【Android 安全】DEX 加密 ( Application 替换 | 分析 ContentProvider 组件中调用 getApplication() 获取的 Application 二 )
  3. Java NIO原理 图文分析及代码实现
  4. 【Bitmap Index】B-Tree索引与Bitmap位图索引的锁代价比较研究
  5. boost::fusion::push_back用法的测试程序
  6. 【CodeForces 577C】Vasya and Petya’s Game
  7. 在新版CSDN博客添加友情链接
  8. [html] 移动端布局的自适应如何做?
  9. python查找公共前缀_Python实现查找字符串数组最长公共前缀示例
  10. html++标签页+界面,CSS+DIV实现多标签页面。
  11. python 第一行 报错_初学Python-只需4步,爬取网站图片
  12. 荣耀9“致敬”小米6?这是今年手机界最大的笑话!
  13. 解决IE下不支持placeholder属性可以根据自己的需要去扩展
  14. Neo4j从mysql读取数据_[bigdata-086] python3+neo4j 从mysql数据库读取记录然后创建节点和关系写入到neo4j...
  15. c++求数组中出现频率最高的数
  16. Think PHP(TP)框架基础知识
  17. Pygame教程系列四:播放音频篇
  18. UltraCompare for Mac(文件内容对比神器)v22
  19. 黄颖评《养家之人》:用手绘童话传递深沉人文关怀
  20. 微信企业号开发(第一篇)

热门文章

  1. jQuery 与 Ajax
  2. jquery ajax步骤,jquery ajax(ajax请求的五个步骤jQuery)
  3. 七日杀linux服务端,服务器七日杀服务器最新命令的使用方法和说明 - Welcome to XiongTianQi.CN...
  4. 英语口语笔记B1-Unit05.休闲娱乐-03-Popular party games
  5. Excel快速选中某一列的所有数
  6. Linux分辨率无法保存,ubuntu16.04中用xrandr设置屏幕分辨率,且重启后不失效
  7. rust怎么建莲花房_《Rust》生存指南及房屋建造攻略
  8. 用计算机猜出人的年龄,抖音很火的年龄计算器
  9. OPPO A33怎么刷机 OPPO A33的刷机教程 OPPO A33完美解除账号锁
  10. 佩戴舒适高颜值蓝牙耳机推荐,更清晰的音质更便捷的操作