首页 > 解决方案 > 生产中的 Node.js 应用程序部署?

问题描述

我想构建/捆绑和部署 node.js,在 Apache、Wamp 或 Tomcat 等生产服务器中表达。

我的 node.js 应用程序具有纯后端逻辑,例如 API 端点、数据库连接等。

这将为来自单独前端应用程序的 API 请求提供服务。FE appln 在服务器中独立构建和部署。它按预期工作。

但是没有正确部署 node.js 后端应用程序的想法。

当前运行 Node.js 应用程序如下

服务器.bat

rem node ./server.js
nodemon ./server.js PORT=7071

我们将执行 server.bat 文件来启动服务器并按预期执行。但它经常被终止。因此,期望进行适当的部署,例如在服务器中构建、构建和部署代码。

我们是否需要像 Grunt/Babel 这样的其他任务运行器来进行捆绑?

标签: node.jsapacheexpresstomcatwamp

解决方案


您实际上不需要捆绑代码以在服务器上运行 node.js 应用程序。您可以使用 Babel,但您需要使用它的唯一原因是您使用的 ECMAScript 功能在您的 node.js 运行时版本中尚不可用。

如果您决定使用 Babel 来启用import语法等功能,Babel 将处理“转译”您的代码,这涉及更改您的代码以将节点运行时中尚不可用的功能重写为兼容的等效代码。这都是可选的,并且最新版本的 node 支持大多数流行的新 JavaScript 功能。

您正在寻找的是一个进程管理器,它可以确保节点进程在停止运行时重新启动,并且基本上可以帮助您管理正在运行的服务器。一种流行的选择是 PM2 ( http://pm2.keymetrics.io/ )。PM2 还具有用于监控指标和协助部署的附加功能。


推荐阅读