【问题标题】:Make PM2 run job only once every 10 minutes让 PM2 每 10 分钟只运行一次作业
【发布时间】:2015-07-29 12:09:40
【问题描述】:

我有一个作业的以下 .json 配置,我需要每 10 分钟运行一次,然后在剩余时间内什么都不做...

"name"        : "test.10minjob",
"cron_restart": "*/10 * * * *",
"autorestart" : false,
"exec_mode"   : "cluster",
"instances"   : 1,

如果我这样运行它,它将运行一次并且永远不会重新启动。

如果我在 autorestart 设置为 true 的情况下运行它,它会在每次作业退出(即完成)时重新启动。

我在这里遗漏了什么明显的东西吗?

【问题讨论】:

  • “exec_mode”不应该是“cluster_mode”还是“fork_mode”?
  • 根据文档 (github.com/Unitech/PM2/blob/master/…),这似乎是正确的。并且要让 cron 工作,它必须处于集群模式。
  • 最好使用真正的 cron 并将 exec_mode 设置为 fork。我找不到 cron 在 pm2 代码中是如何使用的。
  • 自动重启应该是真的
  • 所以你的工作一旦完成,就不会自动退出?

标签: node.js pm2


【解决方案1】:

你可以试试这个 cron 表达式0 0/10 * 1/1 * ? * 我使用这个工具创建了它:

http://www.cronmaker.com

这个表达式看起来和你的很不一样,而且如果我把你的放到一个 cron 解析器中,它会抱怨一个无效的表达式。

【讨论】:

    猜你喜欢
    • 2017-01-18
    • 2017-10-15
    • 2020-12-11
    • 2021-12-18
    • 1970-01-01
    • 2013-11-27
    • 1970-01-01
    • 2020-12-19
    • 1970-01-01
    相关资源
    最近更新 更多