【发布时间】:2021-03-04 19:49:11
【问题描述】:
如何使用 puppeteer-cluster 运行多个并发执行?
我有 5 个最大并发,但是 await cluster.execute() 一次只能运行 1 个。
const cluster = await Cluster.launch({
monitor: false,
concurrency: Cluster.CONCURRENCY_BROWSER,
maxConcurrency: 5,
})
for(let url of urls) {
await cluster.execute(url)
}
我希望所有 5 个都同时执行。另一种方法是 await cluster.queue(),但过了一会儿,内存被吃光了,因为无法检查当前队列长度/大小。
【问题讨论】:
-
使用
cluster.queue(),然后使用await cluster.idle()。
标签: javascript node.js concurrency puppeteer puppeteer-cluster