13
我正嘗試將藍鳥的地圖功能與內置的併發控制一起使用。如何爲地圖功能使用藍鳥併發選項
我想檢索一個名稱列表,然後爲每個名稱進行一些POST請求。例如,我想爲每週的每一天的每個名稱提出請求。但是,我需要限制併發POST請求的數量,因爲預期的服務器具有速率限制。
function getNames() {
//Open mongodb connection
//Get collection and array of names
//return array of names in a promise
}
function createDatesArray() {
//Create an array of rates
//return array of dates in a promise
//Ex. return Promise.resolve(datesArray);
}
getNames().map(function (name) {
return createDatesArray().map(function (date) {
return requestData(date, name);
}, {concurrency: 5});
}).then(function() {
//do something
});
這是使用藍鳥的併發性的正確方法嗎?
文檔鏈接在這裏bluebird documentation。
甜。我在做Promise.using在其他地方的mongo連接。我不知道地圖的靜態變體也採用了併發選項。你的代碼示例是一種非常易讀的方法。 TY。 – aefhm