从Yahoo!
关于网站优化的经典14条建议,
在V2版中,已经更新到35条了,
参见网址:
http://developer.yahoo.com/performance/rules.html
具体规范见“All
”部分。
其中有需要减少请求连接数和减少DNS解析次数,
由于在http协议
中有对浏览器并发请求连接数的限制,1.1版本
中规定了是2个,
参见:http://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html#sec8.1.4
Practical Considerations部分最后一段:
Clients that use persistent connections SHOULD limit the number of
simultaneous connections that they maintain to a given server. A single-user client
SHOULD NOT
maintain more than 2 connections
with any server or proxy. A proxy SHOULD use up to 2*N connections to
another server or proxy, where N is the number of simultaneously active
users. These guidelines are intended to improve HTTP response times and
avoid congestion.
于是通常
的优化网站加载速度的方法是采用多个域名
增加浏览器对同一网页
的请求并发连接数
,
如淘宝网的图片会出现在如下众多域名
下:
img01
.taobaocdn.com,img02
.taobaocdn.com,img03
.taobaocdn.com 。。。
ping一下上述地址,就会发现img01,img03,img04的IP都是:121.14.63.250
,说明它们其实都指向了同一台服务器或同一路由服务器。
显然这样的做法与Yahoo!
14条或者22条或者35条中的Reduce DNS lookups
规则是相违背的,
这需要在提高并发连接数和减少DNS解析之前寻求到一个平衡点,以达到适合自己网站的最快速度。
--------------------------------------------------------------------------------------------
然而随着家庭宽带带宽的增加,普通用户上网速度的增加,
Yahoo!
的14条
也变成了新的22条或者35条,
说明在带宽不一样的今天,网站优化的原则也有所改变,
那么各个浏览器包括IE和Firefox是不是仍然严格地遵循着Http协议中关于2个
并发连接数的限制呢?
下面就来验证一下看看。
首先
来看看Windows XP英文版IE8的并发连接数,
在开始菜单中的运行对话框中输入regedit
打开注册表编辑器,
依次打开注册表项:[HKEY_CURRRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
],
可以看到MaxConnectionsPerServer
和MaxConnectionsPer1_0Server
两个选项的值都是10
,而不是Http协议中规定的2个!
如图所示:
再看看
Firefox的相关配置:
在Firefox地址栏中输入:about:config
然后在配置页面中搜索:max,可以看到network.http.max-connections的值是30,
network.http.max-persistent-connections-per-server
的值是6
,
也都不是协议所规定的2。
如图所示:
最后我们可以动手来写一个简单的JS函数来验证一下浏览器对同一域名(Server)的并发连接数的限制,
写一个发送Ajax请求的函数,其请求的后台页面做延迟响应,如php中用sleep(3)。
然后写16个调用语句,再写一个发送Ajax请求的语句,这个请求地址的后台页面收到请求后立即返回响应数据,
Demo地址如:http://developer.oncecode.com/comet/
分别测试IE8、Firefox 3.6.8和chrome 5.0,
不难得出结论
:
IE8
的并发连接数限制为10
;
Firefox
3.6.8和chrome
5.0的并发连接数都为6
。
分享到:
相关推荐
例如,IE6和IE7浏览器允许6个并发连接,IE8、Firefox 3、Chrome 10、Safari 3/4、Opera 10等允许4个并发连接。而根据HTTP协议的不同,浏览器的连接数也有区别,如HTTP/1.1较HTTP/1.0可以建立更多并行连接。因此,在...
本文将详细介绍IE和Firefox浏览器的JavaScript、CSS、HTML调试插件,帮助你更好地理解和掌握这些工具。 首先,我们关注的是IE浏览器的调试插件。压缩包中的"IEDevToolBarSetup.msi"文件就是用于安装Internet ...
标题中的"IETab"是一个Firefox浏览器插件,它允许用户在Firefox中直接使用Internet Explorer(IE)的渲染引擎来打开网页。这个插件对于那些必须访问仅支持IE特性的网站的用户来说非常有用,因为某些老旧或特定的Web...
然而,由于不同的浏览器对其解析和执行的方式存在差异,尤其是IE(Internet Explorer)和Firefox,这导致了JavaScript在不同浏览器间的兼容性问题。这份文档“IE火狐的JavaScript兼容.doc”深入探讨了这些差异,并...
标题与描述均聚焦于“JavaScript在IE和Firefox(火狐)的不兼容问题解决”,这表明文章旨在探讨并提供解决方案来处理在不同浏览器环境下的JavaScript兼容性问题,尤其是在Internet Explorer(IE)和Mozilla Firefox...
6. **测试和调试**:使用像BrowserStack这样的在线工具,或本地的虚拟机环境,进行跨浏览器测试,确保在各个版本的IE和Firefox上都能正常运行。 7. **利用社区资源**:查找和应用社区提供的已知解决方案,如GitHub...
### Javascript的IE与Firefox(火狐)兼容性解决方案 在Web开发过程中,浏览器兼容性问题一直是开发者们关注的重点之一。由于不同的浏览器对于Web标准的支持程度存在差异,这导致了同样的代码在不同浏览器中的表现...
- **开发者工具**:虽然IE Tab使用的是IE的渲染引擎,但仍然可以结合Firefox的开发者工具进行调试,如审查元素、查看CSS样式、网络请求分析等,这对于解决兼容性问题非常有帮助。 4. **使用注意事项**: - **安全...
- IE对于跨域请求的限制比Firefox更为严格,这可能影响到使用Ajax进行数据交换的应用。 5. **DOM操作**: - IE和Firefox对DOM(文档对象模型)的理解和操作方式不同,比如IE的`document.all`与Firefox的`document...
特别是在早期的Web时代,Internet Explorer(简称IE)与Mozilla Firefox(简称火狐)这两款浏览器之间存在着显著的差异,这使得页面设计师不得不花费大量时间去解决它们之间的兼容性问题。本文将详细介绍如何使网站...
然而,由于不同的浏览器对JavaScript的支持程度和实现方式存在差异,尤其是Internet Explorer(IE)和Firefox这两款流行浏览器,开发者经常需要面对兼容性问题。以下是一些常见的JavaScript在IE和Firefox上的兼容性...
标题中的“本机cookie查看器(IE,firefox)cookieView_ie_firefox”指的是一个软件工具,专门用于查看本地计算机上Internet Explorer(IE)和Firefox浏览器的Cookie信息。Cookie是网站在用户计算机上存储的小型文本...
在互联网的早期,IE(Internet Explorer)和Firefox(火狐浏览器)是两个主要的Web浏览平台,它们在处理CSS(层叠样式表)和JavaScript方面存在显著的差异。这些差异对于开发者来说至关重要,因为它们影响了网站在...
经过三天的苦战,查询无数的国外网站终于实现了对IE和...利用API和DDE分别对IE和FireFox进行了浏览器地址获取,完整的源码程序,与大家分享学习。后期将完善,实现对IE,FireFox,360,搜狗等主流浏览器URL地址的监控。
### IE和Firefox的JavaScript兼容性问题详解 #### 1. `document.formName.item("itemName")` 问题 在处理表单元素时,IE 和 Firefox 对 `document.formName.item("itemName")` 的支持存在差异。 **说明:** - **...
CSS 兼容大全 IE5,IE5.5,IE6,IE7,Firefox,Opera,Safari 等浏览器 CSS 兼容大全是指在不同的浏览器中,例如 IE5,IE5.5,IE6,IE7,Firefox,Opera,Safari 等,如何使网页正常显示的技术。这个技术的核心是 CSS Hack,即...
然而,由于不同浏览器的实现差异,特别是Internet Explorer(IE)和Firefox,开发者经常面临兼容性问题。以下是一些关键的JavaScript兼容处理策略: 1. **数组、集合类对象的元素访问** - IE支持`for...in`循环...
WebDriver是一种自动化测试工具,用于与各种Web...掌握以上知识点,你就能有效地使用WebDriver模拟火狐Firefox浏览器进行自动化测试了。通过编写高质量的测试脚本,可以大大提高测试效率,确保Web应用的质量和稳定性。