node爬虫有哪些限制并发数的技巧?

async function task (url){
    // 这里访问网页
}

const urls = []; // 假设这里有1000个url

// 这里我想一伦执行10个异步任务, 而不是一个一个的执行
async function run (){
 for (const item of urls) {
    const isOk = await task(item);
    console.log(`${isOk}`);
  }
}
阅读 2.1k
1 个回答

可以用 Promise.all 同时等多个 Promise 。

伪代码:

    p = [];
    for (i = 1 to 10 ) {
       p[i] = task(url[i])
    }
    await Promise.all(p)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题