Node.js pm2延迟脚本启动

时间:2014-02-01 17:46:27

标签: javascript node.js pm2

我使用了令人敬畏的pm2软件包来保持我的node.js应用程序活着,但我有一个问题,我不知道如何修复。

我的一个应用程序需要几个脚本,一个服务器和一些客户端。通常当我重新启动服务器时,所有脚本都会重新启动,但由于客户端已在服务器之前加载,因此未建立连接。 是否有可能确保脚本在另一个加载后启动?让我试着改写,以便更清楚

我有:

pm2 start server.js
pm2 start client.js

我只想在服务器启动时以某种方式启动客户端。

道歉是我的问题似乎不清楚,请评论,我会解释更多!

3 个答案:

答案 0 :(得分:3)

重写您的客户端以进行多次连接尝试。这总是一件好事,在这种情况下它也会有所帮助。

答案 1 :(得分:1)

使用此脚本运行Pm2

pm2 start node <start script> --restart-delay <time in milliseconds>

答案 2 :(得分:0)

检查pm2 restart strategies

您可以选择restart-delay

您还可以使用restart_delay设置两次重启之间的固定时间

或者最好使用exp-backoff-restart-delay

指数式重新启动不会像异常发生时(例如数据库关闭)那样疯狂地重新启动应用程序,而是会增加重新启动之间的时间,从而减轻数据库或外部提供商的压力。

您可以在命令行中使用它

pm2 start app.js --exp-backoff-restart-delay=100

或文件上的json格式或通过生态系统.config.js文件:

module.exports = [{
  script: 'app.js',
  exp_backoff_restart_delay: 100
}]
相关问题