【发布时间】:2023-02-16 19:48:55
【问题描述】:
我正在运行一个非常标准的 puppeteer 集群作业,具有以下设置:
const cluster = await Cluster.launch({
concurrency: Cluster.CONCURRENCY_PAGE, // maximize sharing data between jobs
maxConcurrency: 8,
monitor: true
}
但是,我的 CPU 监视器从来没有显示超过 4 个核心的峰值。
强制 maxConcurrency 更高显示更多的工作人员正在运行,但 cpu 利用率没有变化。
我已经阅读了数十个 StackOverflow 线程,但我找不到任何解决此现象的方法,并且其他最大化性能的技巧(更改并发模型、传递自定义 chrome args 等)对整体 cpu 利用率没有任何影响.
FWIW,我在运行节点 v16.19.0 的 Mac OS Ventura 上,从 2019 年开始使用 8 核 i7。(我的一个理论是这里发生了一些操作系统/节点线程亲和性的事情......)
【问题讨论】:
标签: parallel-processing puppeteer puppeteer-cluster