我知道浏览器中一次可能发生的并发http连接数量有限制...
这是浏览器的总体限制吗?网络工作者是否也受到这个限制,或者因为它们是不同的线程而被区别对待?
答案 0 :(得分:2)
TLDR:工作人员(至少在Chrome和Firefox中)似乎遵守每个主机名的全局最大连接数。
我使用此代码创建了许多工作人员......
/* jshint esversion: 6 */
(function() {
'use strict';
const iWorkerCount = 20;
for(let i = 0; i < iWorkerCount; i++) {
const oWorker = new Worker('/js/worker.js');
}
}());
...然后每个工作人员向图像服务发出远程请求......
/* jshint esversion: 6 */
(function() {
'use strict';
const sUrl = 'https://loremflickr.com/320/240';
fetch(sUrl).then(sResponse => {
console.log(sResponse);
});
}());
有一批初始请求同时完成,然后一旦最大请求数量下降,其余请求就会涓涓细流
答案 1 :(得分:-1)
您可以使用Service worker中的fetch()方法发出网络请求。 Googe Developers Explain Fetch
fetch函数遵循HTTP请求模型,仅受网络限制。