使用Web worker的最大http请求数

时间:2014-08-25 15:35:37

标签: javascript xmlhttprequest web-worker

我知道浏览器中一次可能发生的并发http连接数量有限制...

这是浏览器的总体限制吗?网络工作者是否也受到这个限制,或者因为它们是不同的线程而被区别对待?

2 个答案:

答案 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请求模型,仅受网络限制。