web前端性能优化——DNS预解析和浏览器并发连接数
来源:互联网 发布:股指期货仿真软件 编辑:程序博客网 时间:2024/05/17 02:38
当浏览器请求一个URL的时候,通过firebug我们可以发现大概有以下几个过程:阻挡、域名解析、建立连接、发送请求、等待响应、接收数据。后面四个跟用户的网络情况和你的服务器处理速度有关,本文重点说说前两个。
提高浏览器并发连接数
阻挡:不同的浏览器对单个域名的最大并发连接数有一定的限制,HTTP/1.0和HTTP/1.1也不相同。比如HTTP/1.1协议下,IE6的并发连接数限制是2个;而在HTTP/1.0下,IE6的并发连接数可以达到4个。在其它浏览器也有类似的限制,一般是4~8个。这个时候,如果浏览器同时对某一域名发起多个请求,超过了限制就会出现等待,也就是阻挡。
那么为了解决阻挡这一问题,我们可以对某些URL的域名分散处理,比如我们的图片域名,一般用类似img.guoweiwei.com的域名,当一个页面包含20多张图片的时候,那至少有10几个请求会被阻挡,而如果我们分散到img0.guoweiwei.com/img1.guoweiwei.com/img2.guoweiwei.com/…等不同域名的时候,至少这20个图片请求会并发进行,网站打开速度会明显提升很多。类似的,可以对一些css/js的域名同样处理。
DNS预解析
域名解析:从域名查询IP的过程,这个过程一般都很快的,但也会引起延迟。一般浏览器会适当的对解析结果缓存,并对页面中出现的新域名进行预解析,但并不是所有的浏览器都会这么做,为了帮助其它浏览器对某些域名进行预解析,你可以在页面的html标签中添加dns-prefetch告诉浏览器对指定域名预解析,如下:
<link rel="dns-prefetch" href="//domain.com">
如果细心一点,你会在淘宝的网站发现这两个现象,淘宝有很多类似img0.tbcdn.cn这样的域名。
再另外提一点优化,那就是为什么用img0.tbcdn.cn这个域名,而不是img0.taobao.com呢?这个得从cookie说起,淘宝的cookie已经非常大了,据说曾接近1K,如果用后面的域名,那每次请求图片都会带上长长的cookie,后果可想而知,不仅使得网络请求变慢,而且还浪费了带宽,而淘宝图片服务器并不需要这些cookie。这就是所说的cookie污染,为了解决这一问题,单独的域名是很有必要的。
- web前端性能优化——DNS预解析和浏览器并发连接数
- 浅谈前端性能优化(九)——DNS解析优化
- IIS并发连接数及性能优化
- IIS并发连接数及性能优化
- IIS并发连接数及性能优化
- IIS并发连接数及性能优化
- 前端优化系列之DNS预解析
- Web前端性能优化之浏览器访问优化
- Web前端性能优化之一:优化浏览器访问
- Web前端性能优化之浏览器访问优化
- Web前端性能优化——使用Array.prototype.join代替字符串连接
- 浏览器并发连接数
- 浏览器并发连接数
- Web前端性能优化——CSS优化
- Web 前端性能优化
- Web 前端性能优化
- WEB前端性能优化
- web前端性能优化
- CentOS6.6下编译安装mysql5.6
- CentOS 6.4安装和配置NFS服务
- 编程中关于异常处理的10个最佳实践
- 网络分析与网络数据集—网络分析的实际应用
- 12月份工作总结暨2014年度总结
- web前端性能优化——DNS预解析和浏览器并发连接数
- jquery中Ajax的异步和同步
- pip错误incompleteread
- nginx 超时
- android动画-Frame Animation
- [开心学php100天]第四天:完爆php魔力函数
- 成为高级程序员的10个步骤
- C++基础之头文件和源文件的关系
- 数3退1