【问题标题】:Expressjs to productionExpressjs 到生产环境
【发布时间】:2011-08-10 17:50:55
【问题描述】:

我是 expressjs 的新手,我想将 expressjs 应用程序部署到生产环境。根据我的谷歌搜索,这是我正在考虑的 rackspace 上的设置:

1 个负载均衡器 + 2 个服务器 + 永远运行应用程序

我的问题是:

  1. 我应该使用什么引擎来运行应用程序? nginx?

  2. 每台服务器可以运行多少个应用程序?

谢谢。

【问题讨论】:

    标签: node.js nginx express


    【解决方案1】:
    1. 如果您正在提供静态文件或使用 nginx 的任何反向代理功能,则可以使用 nginx。但如果没有,由于您的服务器位于负载均衡器后面,因此根本不需要 nginx。

    2. 经验法则是每个核心一个 node.js/express.js 进程。查看cluster 以帮助您管理此问题。确保您的负载均衡器了解您正在运行的所有 node.js 进程(而不仅仅是在每台服务器上的一对 IP/端口之间进行负载均衡)。

    更新:Node.js 现在内置了开箱即用的cluster

    此外,如果您在 Ubuntu 上进行部署,您可以根据需要使用 upstart 而不是永远使用。

    【讨论】:

    • 你能解释一下集群是如何工作的吗,我无法从 API / 文档中获得任何信息。
    • 我还没有使用它,但现在 node.js 核心已经内置了开箱即用的集群。查看文档:nodejs.org/docs/latest/api/cluster.html
    【解决方案2】:

    你需要在你的机器上安装 nodejs 来运行 nodejs。 nginx 是用于反向代理和负载均衡器的服务器。您也可以通过 pm2 运行应用程序,而不是永远运行应用程序,这将处理所有集群并在后台运行您的应用程序。

    【讨论】:

      猜你喜欢
      • 2012-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-14
      • 2011-10-23
      • 2011-02-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多