PM2集群模式和Node集群性能的比较

3
我知道 PM2 集群模式 可以轻松地在单台机器上跨多个 CPU 进行扩展。它是通过创建多个 node 应用程序实例来进行扩展的吗?本质上,它是否与在不同端口上运行多个 node 应用程序并使用像 Nginx 这样的反向代理相同?
另外,Node Cluster 会派生出一个子进程。与 PM2 集群模式相比,这种方法是否更有效,因为它只运行一个 Node 应用程序并使用工作线程来处理传入的请求?
1个回答

4

它们的基本功能相同,但PM2将在底层使用Node Cluster,这将使事情变得更容易,因为您不必在代码中编程处理分叉,只需按原样运行即可。

请注意,群集模式不支持会话黏性,因此请确保您的应用程序是无状态的。


我可能需要测试一下,但我正在尝试理解资源使用量是否会与PM2创建的分支数量成比例增加。例如,如果应用程序的单个实例使用了4GB,在PM2中每个额外的实例将消耗另外4GB,而在Node Cluster中则不会。 - Nick
3
我刚刚发现,在Node.js中,fork(派生进程)与POSIX fork(派生进程的一种方式)有很大不同。在Node.js中,fork并不会实际上克隆当前的进程,但它会启动一个新的V8实例。来源:http://stackabuse.com/setting-up-a-node-js-cluster/ - Nick

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接