Node.js 中使用worker_threads处理CPU密集型任务时,为什么你的主线程还是卡住了?
在 Node.js 服务里做图片压缩、PDF 解析或者加解密时,经常会遇到一个尴尬的情况:明明已经把计算逻辑放进了 worker_threads,接口响应时间还是飙升,主线程的 event loop 延迟照样高得离谱。问题往往不在 worker 本身,而在于线程间通信的方式。很多实现里主线程用 worker.postMessage 把大 Buffer 发给 worker,worker 处理完再 postMessage 回来,这中间发生了结构化克隆,数据被完整复制了两遍。对于几十 MB 的 Buffer,复制...