前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >浏览器并发请求及解决方案

浏览器并发请求及解决方案

原创
作者头像
剁椒鱼鳞
发布2023-05-26 15:06:43
3930
发布2023-05-26 15:06:43
举报
文章被收录于专栏:前端小学生

一、规则

前提是同一域名情况下:

  1. 同一get请求的并发数是1,即只有上一个请求结束,才会执行下一次请求,否则即在队列中等待请求
  2. 不同的get/post的请求的并发数量是6个,当达到6个时,其余的在队里中等待请求

二、原因

  1. 操作系统的端口有限,每个请求链接都会占用一个端口,操作系统通常会对总端口的一半对外开发请求,以防数量不呗迅速消耗殆尽
  2. 过多请求导致频繁切换产生性能问题,一个行程对应一个http请求,且线程的切换需要性能消耗。所以请求控制器会产生一个链接池,以复用之前的链接(http1.1及之后版本,即长链接),所以这个池子的数量是有限的,如果池子内全被使用,则会堵塞后续的请求任务,等待空闲链接时才会执行后续的请求任务。
  3. 避免同一客户端请求同一接口,导致服务器压力增大(并发)。

三、http/https1.0、1.1版本下的并发数

  1. Chrome、Firefox为6个
  2. Safari:4个
  3. IE10、11:6个
  4. IE9:10个
  5. IE6:6个
  6. <=IE7、Opera:4个
  7. 对于websocket的并发数,除IE的为6个外,其余的基本上都是几百个256或者200,但Safari的为1273个

四、解决方案

  1. 将请求资源分布到不同的域名下
  2. 利用http缓存,对资源进行缓存处理
  3. 减少资源请求,如:Vue使用动态路由,按需倒入

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、规则
  • 二、原因
  • 三、http/https1.0、1.1版本下的并发数
  • 四、解决方案
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档