2013-08-07 41 views
7

我有一个运行长执行进程的应用程序。为了让它更快,我做了简单的数据分片,并且希望并行运行它们,只需通过.fork()2个相同应用程序的实例。Node.js child_process.fork()运行在不同的CPU内核上

我在那里有2个Cores机器,并且想要确保2个Cores被利用,第一个实例在第一个核心上运行,第二个在第二个核心上运行。

我知道关于cluster模块,但在这种情况下它似乎不相关,因为我不需要在它们之间运行和负载均衡的HTTP服务。只是工作者(意思是说,他们不需要彼此沟通,发送消息或任何 - 他们只是做HTTP请求并将数据存储到数据库)。

是否有可能控制node.js进程采用哪个CPU核心?如何在Mac/Linux上进行监控?

+1

您可能会检查这个话题:http://stackoverflow.com/questions/663958/how-to-control -which-core-a-process-runs-on – moka

+1

我不认为你可以编程一个线程来运行CPU内核。这将妨碍操作系统,因为它无法切换上下文,因此也无法执行多任务操作。这样的决定最好留给操作系统。 – user568109

+0

http://stackoverflow.com/a/8685968/941764 – jgillich

回答

相关问题