nodejs 主进程是否使用所有 cpu 内存?
Does nodejs Master process utilize all the cpu memory?
试图了解 nodejs 在 cpu 内存使用方面的工作原理,我们在产品中有 4 个实例由于繁重的工作而速度变慢,并且我们有负载平衡器。
在 instance/app 级别添加节点集群是否有意义,这样我们就可以使用 cluster.fork
的所有硬件功能,这样所有子进程也可以直接监听端口。什么是更好的方法添加更多实例到负载均衡器或添加节点集群或第三方 PM2 等来处理重负载?
扩展节点应用程序的方法——cluster.fork
或负载平衡多个实例——将起作用。
如果负载平衡在没有 pm2
的情况下工作,此时将其添加到混合中可能没有意义,因为复杂性。
另一件需要考虑的事情:如果你的 nodejs 实例是 运行 https
服务器,而不是 http
服务器,你可能想使用 nginx 作为反向代理,并拥有它处理 https 加密工作。您可以让 nginx 将请求转发到位于 http://localhost:3000
的节点实例。 https
-处理是计算密集型的,nginx 比 nodejs 更有效。
试图了解 nodejs 在 cpu 内存使用方面的工作原理,我们在产品中有 4 个实例由于繁重的工作而速度变慢,并且我们有负载平衡器。
在 instance/app 级别添加节点集群是否有意义,这样我们就可以使用 cluster.fork
的所有硬件功能,这样所有子进程也可以直接监听端口。什么是更好的方法添加更多实例到负载均衡器或添加节点集群或第三方 PM2 等来处理重负载?
扩展节点应用程序的方法——cluster.fork
或负载平衡多个实例——将起作用。
如果负载平衡在没有 pm2
的情况下工作,此时将其添加到混合中可能没有意义,因为复杂性。
另一件需要考虑的事情:如果你的 nodejs 实例是 运行 https
服务器,而不是 http
服务器,你可能想使用 nginx 作为反向代理,并拥有它处理 https 加密工作。您可以让 nginx 将请求转发到位于 http://localhost:3000
的节点实例。 https
-处理是计算密集型的,nginx 比 nodejs 更有效。