我在这里阅读了几个关于 Node.js 以非阻塞方式快速处理文件 I/O 操作的能力与使用带有阻塞或非阻塞请求的工作线程的性能优势的问题和答案,但似乎没有回答我的问题。
我正在编写一个 Node.js 应用程序,它将打开、散列和写入存储在多个硬盘驱动器上的非常大的文件(多个 gig)。我正在探索工作线程的想法,因为它们允许我将命令隔离到特定的硬盘驱动器。例如:假设我有一个线程处理将硬盘驱动器 A 上的一个文件复制到硬盘驱动器 B,另一个线程处理将一个文件从硬盘驱动器 C 复制到硬盘驱动器 D。
假设我同时将它扩展到更多的硬盘驱动器,对我来说只使用没有工作线程的 Node.js 并让它处理所有这些请求是否更有意义,或者如果我可以隔离工作线程是否更有意义按驱动器 I/O,并同时处理多个驱动器的请求?
鉴于我读过的内容,工作线程似乎是显而易见的解决方案,但我也看到让单个 Node.js 进程处理文件 I/O 队列通常更快。感谢您提供的任何指导!