Promise.all 每次处理一组 6 个 promise
Promise.all processes the promises in a group of 6 at each time
我想同时发出一堆(假设是 20 个)HTTP POST 请求(以便将应用程序的信息发送到某些 HTTP 服务器)。
我正在使用 http angular 服务来 return 承诺:
function deployPromise(server, app){
return $http({
method: 'POST',
url: server.url,
data: app
});
}
对于同时部署,我使用 Promise.all 获取 deployPromises 数组:
function deploy(servers, app){
Promise.all(servers.map(function(server){
return deployPromise(server, app);
}));
}
最后,我使用可用服务器数组和应用程序信息调用 deploy 函数:
deploy(servers, app);
令我惊讶的是,不是一次执行所有请求,而是在一组 6 个中发送请求(换句话说,deployPromises 已解决)。我的意思是,当前 6 个调用完成,然后将处理第二个 6 个调用,依此类推。
你们有什么想法吗?
这是浏览器的限制,您不能同时打开无限数量的连接。
我想同时发出一堆(假设是 20 个)HTTP POST 请求(以便将应用程序的信息发送到某些 HTTP 服务器)。
我正在使用 http angular 服务来 return 承诺:
function deployPromise(server, app){
return $http({
method: 'POST',
url: server.url,
data: app
});
}
对于同时部署,我使用 Promise.all 获取 deployPromises 数组:
function deploy(servers, app){
Promise.all(servers.map(function(server){
return deployPromise(server, app);
}));
}
最后,我使用可用服务器数组和应用程序信息调用 deploy 函数:
deploy(servers, app);
令我惊讶的是,不是一次执行所有请求,而是在一组 6 个中发送请求(换句话说,deployPromises 已解决)。我的意思是,当前 6 个调用完成,然后将处理第二个 6 个调用,依此类推。
你们有什么想法吗?
这是浏览器的限制,您不能同时打开无限数量的连接。