nodejs表达app部署到生产

时间:2016-07-29 06:18:28

标签: node.js express production

很抱歉,如果这是一个基本问题,我仍然围绕着nodejs部署。我在nodejs上编写了一个应用程序,我想将其部署到生产环境中。到目前为止,为了测试目的,我使用了Express。但据我所知,Express是开发服务器而不是生产服务器。如何将nodejs应用程序部署到生产环境以及我应该使用的服务器是什么。另外,我有很多用于表达路由和中间件的代码,当我部署到另一台服务器时,它是如何工作的?

2 个答案:

答案 0 :(得分:0)

使用express.js创建应用程序时,所有快速模块都已在package.json中指定,并将作为npm模块安装。

您只需在生产服务器上安装node.js,将代码放在那里,运行npm install,然后使用NODE_ENV=production参数启动Web服务器。如果您可以使用grunt或gulp来处理静态资产(js / css minification,...)以优化生产模式的性能,那将是一个加分。

有关详细信息,请参阅此处:https://expressjs.com/en/advanced/best-practice-performance.html

答案 1 :(得分:0)

您可以结合使用pm2ExpressJs来在远程服务器上进行部署。基本上,pm2使您的代码在群集模式下的后台任务中永久运行。

基本上,您需要将文件放入远程服务器,并为pm2创建一个.json或yaml文件,以了解该过程。

然后,您应该通过npm install安装库和模块。之后,您需要使用npm i -g pm2在远程服务器上安装pm2。

所有这些都可以使用pm2的基本cli命令进行部署。 pm2 start process.yml --env=production是部署的基本示例。您可以使用pm2 stop process.yml停止任务。您也可以使用pm2 monit进行系统监视。如果要查看日志,可以运行pm2 logs。如果您想重新启动或更新:pm2 reload allpm2 update有帮助。

对于远程服务器,可以使用云以获得最佳性能。您可以查看AWSAzureGCloudHerokuDigitalOcean的价格。他们提供免费套餐,您可以搜索它们。