0

假设您有 3 个域,foo.com、bar.com 和 blah.com。您想为每个运行一个 nodejs 应用程序。

使用 http-proxy 将它们代理到 3 个不同端口上的 3 个单独的节点应用程序更好,还是更好地拥有一个使用 express.vhost() 来 require() 每个主机所需的任何代码的单节点应用程序?两种情况的利弊?

4

1 回答 1

0

每个 node.js 进程只使用一个 CPU。如果您的服务器只有一个核心,那么最好只运行一个节点实例以避免尽可能多的上下文切换。

但是,如果您拥有多核(和超线程),那么运行与拥有的核一样多的节点实例是有意义的。请记住,您的前端代理也会占用处理时间。

因此,对于四核服务器和 3 个域,运行 4 个进程非常有意义——前端代理和 3 个节点实例。

另外,不要忘记您的数据库也可能配置为启动多个线程。

于 2012-11-22T12:34:53.210 回答