缩放nodejs app的哪种方式更好?

时间:2018-05-24 07:24:46

标签: node.js nginx pm2 nginx-reverse-proxy

我也需要扩展到不同的服务器。

  1. 只有pm2可以实现这一点,因为它只是从主进程中分配子进程,它也共享同一个端口。
  2. 使用像Nginx这样的反向代理,是水平扩展的前进方式吗?

1 个答案:

答案 0 :(得分:0)

您可以使用PM2 with Nginx

这是扩展node.js应用程序的首选方法。

这是更好的解释:

  

外面是Nginx,是前门。它应该处理SSL并成为pm2的反向代理。用于在nginx处映射静态资产以及从这些请求中映射节点的加值点。

     

然后pm2。它也是一个反向代理,但非常特定于节点进程,而且非常特定于流程管理器而不是Web服务器。使用它仍然是个好主意。你可以启动N节点进程,让你可以利用多个CPU,而pm2会在发生崩溃的情况下继续使用它们。您也可以进行正常的重启,一次更新一个应用程序实例,停机时间为零。

     

Pm2还附带了一些方便的实用程序,如内置(免费增值)指标,以及一个很棒的小型网络管理工具,您可以展示它以显示基本统计数据和stdout流程。

     

将两个图层放在同一台服务器上或根据需要拆分,可以为您提供大量的控制和性能。开销并不是很糟糕(因为每一层都在做它最擅长的事情)并且完全没有设置。