运行 多个 Node.js 脚本是否自动跨核心分布
Does running multiple Node.js scripts automatically distribute across cores
我想在多核机器上进行扩展。使用 cluster
库是一个选项,但我想知道我是否可以用更简单的方法来做到这一点:只需 运行 连接多个服务器。
所以我想知道的是:Node.js 是否会自动将服务器分布到多个内核上。因此,如果我有 5 个核心和 5 个服务器,每个服务器是否会 运行 每个核心。
如果是这样,这是否是一种在多核机器上进行扩展的可行方法?
确实,仅 运行 节点应用程序的多个实例将使用多个进程。
但请注意,集群选项有一个微小的优势,那就是如果您创建的东西在 TcpIP 端口上侦听,则集群可以共享一个 IP 端口,.. 例如。如果说您在端口 80 上 运行 设置网络服务器,则可以使用端口 80 上 运行 的所有内核..
我倾向于做的是 运行 端口 80 上的反向代理,并在不同的端口上 运行 连接其他进程。 IOW:集群选项非常适合创建反向代理。:)
上面的优点是反向代理实际上不需要保持状态,你可以让它也做 SSL 所有使用集群。这会留下您的节点应用程序,因此它可以保持状态,例如。在内存中缓存响应等。节点的一大优势是进程内请求,这里不需要特殊的 ipc。
我想在多核机器上进行扩展。使用 cluster
库是一个选项,但我想知道我是否可以用更简单的方法来做到这一点:只需 运行 连接多个服务器。
所以我想知道的是:Node.js 是否会自动将服务器分布到多个内核上。因此,如果我有 5 个核心和 5 个服务器,每个服务器是否会 运行 每个核心。
如果是这样,这是否是一种在多核机器上进行扩展的可行方法?
确实,仅 运行 节点应用程序的多个实例将使用多个进程。
但请注意,集群选项有一个微小的优势,那就是如果您创建的东西在 TcpIP 端口上侦听,则集群可以共享一个 IP 端口,.. 例如。如果说您在端口 80 上 运行 设置网络服务器,则可以使用端口 80 上 运行 的所有内核..
我倾向于做的是 运行 端口 80 上的反向代理,并在不同的端口上 运行 连接其他进程。 IOW:集群选项非常适合创建反向代理。:)
上面的优点是反向代理实际上不需要保持状态,你可以让它也做 SSL 所有使用集群。这会留下您的节点应用程序,因此它可以保持状态,例如。在内存中缓存响应等。节点的一大优势是进程内请求,这里不需要特殊的 ipc。