当前位置: 首页 > 后端技术 > Node.js

网站性能优化——DNS预热合并HTTP请求

时间:2023-04-03 23:49:17 Node.js

DNS预热DNS解析一次需要20-120ms,当网页中使用的域名较多时,DNS预热节省的时间还是很可观的加热的目的:为了减少请求数量并提前预取DNS。爬虫APP网页meta另外,这对于国际化站点尤其必要。比如在美国访问中文网站,DNS解析会回到中国,一般需要400ms到800ms。甚至更长,如果提前预热,则可以节省这些时间。合并HTTP请求这里的合并主要是针对当前页面访问的资源文件,比如css、js、图片等,为什么要合并请求呢?有人会很奇怪,现代浏览器可以并发请求资源,为什么要这样做呢?我只能说你太年轻太单纯了。浏览器虽然可以并发,但是PC上网的带宽是有限的,浏览器可以使用的TCP连接就更有限了。我看一个网页请求的例子:你看,一个2KB的资源加载需要将近0.5s,99%的时间都在等待,天啊!那你还在纠结什么,老老实实的用webpack压在一起吧。注意chrome在http和https下对同一个域名的并发请求数是不一样的:http=6,https>13。这里的并发量挺水的。从上图可以看出,链接虽然建立了,但是没有用,还是要等前面的资源下载完才会生效。至于为什么浏览器会这样做?(哪位知道的可以留言告诉我,万分感谢!)更多的可以参考浏览器请求静态资源的并发数