Sails.js 生产sailsjs应用程序,无pm2停机

Sails.js 生产sailsjs应用程序,无pm2停机,sails.js,pm2,Sails.js,Pm2,我有一个sailsjs应用程序在集群模式下运行,带有pm2和两个实例。想要这两个实例的主要原因之一是,我可以重新启动/更新应用程序,而不必关闭整个应用程序 但是,在重启一个实例 PM2重启4 时,如果刷新它,站点将是不可靠的(这是技术术语)。我假设这是因为grunt正在做它的事情,并且两个实例的.tmp文件夹都被破坏了 sailsjs的唯一真正方法是在不同的端口上运行两个完整的实例,并使用nginx之类的东西作为负载平衡器,还是我缺少PM2的一些东西,可以允许分阶段重新启动,而不会造成可用资源

我有一个sailsjs应用程序在集群模式下运行,带有pm2和两个实例。想要这两个实例的主要原因之一是,我可以重新启动/更新应用程序,而不必关闭整个应用程序

但是,在重启一个实例<代码> PM2重启4 时,如果刷新它,站点将是不可靠的(这是技术术语)。我假设这是因为grunt正在做它的事情,并且两个实例的.tmp文件夹都被破坏了


sailsjs的唯一真正方法是在不同的端口上运行两个完整的实例,并使用nginx之类的东西作为负载平衡器,还是我缺少PM2的一些东西,可以允许分阶段重新启动,而不会造成可用资源的任何停机或中断?

这里有一些问题

  • 您需要提供您所使用的sails.js/node.js/pm2的版本 跑步简而言之,尽可能完整地描述您的环境 可能

  • 更全面地描述你的问题有助于人们写出更简洁、清晰的答案

  • node.js集群模式可能会改变(从v0.12.4开始),并且仍然被视为“不稳定”:

  • 在以下线程中,“mikermcneil于2014年12月3日发表评论”表示禁用Grunt用于pm2生产:

    让我澄清一下,直到最近我才使用pm2。除了Grunt,它还存在套接字连接问题,而nginx处理得很好。相信我,追那只虫子可不好玩。以下是该线程的链接:

    作为替代解决方案,我选择将nginx与并行sails.js应用程序结合使用,将redis用于套接字和会话。永久使用以保持应用程序运行并禁用grunt。将nginx指向assets文件夹以快速提供静态文件,绕过sails.js并向这些资产添加缓存

    希望这有帮助