我正在创建一些与 HTTP 服务器的挂起连接(comet、反向 AJAX 等)。它工作正常,但我看到浏览器只允许同时与给定域有两个挂起的连接。因此,如果用户在浏览器的 Tab1 中查看我的网站,然后又尝试在 Tab2 中加载它,他们就会用完与我的网站的两个允许的连接。
我想我可以做一些通配符域的事情,我让我的 HTTP 服务器解析我的网站的任何地址,例如:
*.example.com/webapp -> 192.0.2.1 (the actual ip of my server)
so:
a.example.com/webapp
b.example.com/webapp
c.example.com/webapp
一切仍然指向(www.example.com/webapp
)但浏览器认为它们是不同的域,所以我不会遇到 2 个连接的限制。这是真的?
即使那样istrue - 所有域中每个浏览器的活动连接数是否有限制?假设我使用上面的方案 - 例如 Firefox 在任何给定时间只允许 24 个并行连接吗?就像是:
1) a.example.com/webapp
2) www.download.example/hugefile.zip
3) b.example.com/webapp
4) c.example.com/webapp
...
24) x.example.com/webapp
25) // Error - all 24 possible connections currently in use!
我只是选择 24 个连接/Firefox 作为示例。
每个服务器/代理的默认同时持续连接的最大数量:
Firefox 2: 2
Firefox 3+: 6
Opera 9.26: 4
Opera 12: 6
Safari 3: 4
Safari 5: 6
IE 7: 2
IE 8: 6
IE 10: 8
Edge: 6
Chrome: 6
该限制是针对每个服务器/代理的,因此您的通配符方案将起作用。
仅供参考:这与 HTTP 1.1 特别相关;其他协议有单独的关注点和限制(即 SPDY、TLS、HTTP 2)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)