1

Meteor 是否利用了多核处理器?是否有需要设置的配置选项?

4

2 回答 2

4

简短的回答是否定的,Meteor 没有利用多核处理器。

原因很简单:Meteor 基于 node.js,根据定义 node.js 不会自动扩展到多个 CPU 或 CPU 内核。

您可能想知道是否有可能以某种方式“强制”它利用多个内核。好吧,我认为答案是“也许,但不容易”。最近 node.js 包含了集群模块http://nodejs.org/docs/latest/api/cluster.html,它允许您启动最终返回的子进程。这对您来说可能是一个很好的用例,例如,如果您正在大规模进行图像处理或类似的事情。但我不知道有任何 Meteor-native 方式来实现这一点。

如果您从扩展的角度来看这个,您可以尝试通过在 *nix 上使用 Taskset 设置核心亲和性来启动每个核心的节点进程,然后在每个核心上生成一个流星实例。这可能有效,但我的直觉是您的硬件更有可能在 I/O 而不是 CPU 上阻塞。此外,目前两个流星服务器无法相互通信。

当 Meteor 进入 V1 版本时,您可能会有更多的运气 - 请参阅有关服务器到服务器通信的路线图上的 Trello 注释:https ://trello.com/c/RKEYpJ4P/46-multitier-server-architecture-support-very-large -同时的客户数量

最后,请记住 Meteor 仍在开发中,Galaxy 可能(我在这里推测)支持多核处理。Galaxy 是 MDG 团队目前正在开发的流星平台。您可以在http://www.meteor.com/blog/2012/07/25/meteors-new-112-million-development-budget上阅读有关此项目的更多信息

我希望这有帮助。

于 2013-08-03T19:38:08.487 回答
2

现在,您可以通过Cluster获得带有 Meteor 的 Multiple Cores 。这是你必须做的。

首先添加集群包:

meteor add meteorhacks:kadira

然后公开这个环境。运行应用程序时的变量:

export CLUSTER_WORKERS_COUNT=auto

有关更多信息,请遵循本文

于 2015-02-24T01:20:47.343 回答