[英]Node.js pm2 delay script launch
我使用了很棒的 pm2 包来保持我的 node.js 应用程序的活动,但我有一个我不知道如何解决的问题。
我的一个应用程序需要几个脚本、一个服务器和几个客户端。 通常,当我重新启动服务器时,所有脚本都会重新启动,但未建立连接,因为客户端已在服务器之前加载。 是否可以确保脚本在另一个加载后启动? 让我试着改写一下,让它变得更清晰
我有 :
pm2 start server.js
pm2 start client.js
而且我想仅在服务器启动时以某种方式启动客户端。
抱歉,我的问题似乎不清楚,请发表评论,我会解释更多!
使用此脚本运行 Pm2
pm2 start node <start script> --restart-delay <time in milliseconds>
重写您的客户端以进行多次连接尝试。 这总是一件好事,在这种情况下也会有所帮助。
检查 pm2重启策略
您可以使用选项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
}]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.