繁体   English   中英

部署node.js服务器应用程序(最佳实践)

[英]Deploy node.js server application (best practice)

我想知道我部署node.js应用程序的方式是否良好,或者是否可以改进以及如何改进,以及是否有一些最佳实践。

考虑到它是一个大型应用程序,并且可能包含未处理的实例,这会使节点服务器崩溃(即使使用单元测试,我们也不确定它是否100%崩溃安全)。我永远使用它来使服务器始终运行(我也可以使用pm2,但目的是一样的)。 因此,我构建了一个systemd脚本将此服务用作“ service nodeapp start | stop | status”之类的服务

我认为最好的解决方案是在永远不使用pm2或永久使用pm2的情况下运行节点“原始”,但仍会出现崩溃的风险过高。

服务器位于nginx代理后面,并且我还添加了logrotate脚本进行日志维护。

任何意见和建议将不胜感激

谢谢

互联网上和stackoverflow上都有很多清单。 我的个人清单是:

  • 将node_env设置为暂存
  • 运行所有单元测试
  • 部署在暂存环境中
  • 在服务器上运行所有脚本
  • 如果测试通过,请更改prod上的node_env并进行部署

如果您想跳过一些测试,并确保开发人员和产品上的环境相同,则有一个相当新的东西叫做docker,但是第一次,它会增加一些复杂性。 希望当所有人都与Docker并肩作战时,它应该不会造成太大的干扰。

附言 永久使用,如果您使用的是docker,则可以重新启动容器,但是效果不是很好

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM