去哪找网站建设公司好,网页制作流程一共有几步,企业咨询合同模板,为何网站需改版在浏览器同域名并发请求都产生并发数限制#xff0c;并发限制通常是4#xff5e;8以内。那么我们将来了解浏览器请求并发限制的原因和优化手段。 浏览器并发数量统计
浏览器为什么要请求并发数限制#xff1f; 在了解优化手段之前我们先了解浏览器限制并发请求的原因 1.对操… 在浏览器同域名并发请求都产生并发数限制并发限制通常是48以内。那么我们将来了解浏览器请求并发限制的原因和优化手段。 浏览器并发数量统计
浏览器为什么要请求并发数限制 在了解优化手段之前我们先了解浏览器限制并发请求的原因 1.对操作系统端口资源考虑
PC总端口数为65536那么一个TCPhttp也是tcp链接就占用一个端口。操作系统通常会对总端口一半开放对外请求以防端口数量不被迅速消耗殆尽。
2.过多并发导致频繁切换产生性能问题
一个线程对应处理一个http请求那么如果并发数量巨大的话会导致线程频繁切换。而线程的上下文切换有时候并不是轻量级的资源。这导致得不偿失所以请求控制器里面会产生一个链接池以复用之前的链接。所以我们可以看作同域名下链接池最大为48个如果链接池全部被使用会阻塞后面请求任务等待有空闲链接时执行后续任务。
3.避免同一客服端并发大量请求超过服务端的并发阈值
在服务端通常都对同一个客户端来源设置并发阀值避免恶意攻击如果浏览器不对同一域名做并发限制可能会导致超过服务端的并发阀值被BAN掉。
4.客户端良知机制
为了防止两个应用抢占资源时候导致强势一方无限制的获取资源导致弱势一方永远阻塞状态。
优化手段 那么我们知道了浏览器并发限制的原因我们可以从下面几方面入手优化 域名散发
将请求通过多个域名分开请求比如 100A请求 - (25A 25B 25C 25D)。但是建议4个左右。因为过多域名会导致dns解析性能问题。
cookie free
cookie free其实是区分主站点请求与其他次要请求的cookie存储和携带。当网站的cookie大小5kb发送150个请求全部携带上cookie就是750kb在1024 Kbps的常见上行带宽下需要长达7.5秒左右才能全部发送完毕。尽管这些请求可能存在并发执行但是在静态资源请求上几乎没必要携带cookie信息。所以我们可以启用主站点域名和其他域名进行请求区分cookie的携带。
小图片合并成大图雪碧图
把多张小图片合并成一张大图通过css的background背景精灵定位显示。减少图片资源的请求数量雪碧图就是常见的一种手段
设置Cache-Control max-age
当我们确定项目那些资源是长久不变化的我们对其设置版本号控制和Cache-Control max-age 进行长时间缓存减少浏览器对资源重新请求。
loading Image 懒加载
懒加载其实是大型网站通常必备对一个手段为了防止无意义加载场景。通常用户在进来对第一屏对内容不会全部查看可能在浏览过程中已经跳转到其他页面。那么在用户浏览到的地方没必要进行图片加载、节点创建等操作可以等用户滚动到节点内容区域再进行显示和加载内容。
PWA渐进式应用
近几年比较火的一个优化手段通过web Service 对当前应用请求过的请求进行缓存到客户端用户下次访问页面或刷新页面都是直接从客户端本机直接读取之前的response。可以细化控制缓存静态资源、api请求等。但是pwa缓存有限制条件只能缓存https协议、主站点域名的请求。并且之前缓存过的请求需要在下次PWA机制启动时候进行清除和刷新这样会导致缓存的资源需要两次访问页面才能发生更新。