【问题标题】:Repeating task at constant time intervals以固定的时间间隔重复任务
【发布时间】:2014-02-15 22:02:28
【问题描述】:

我正在寻找一种在固定时间间隔(例如 1 小时或 5 小时)内重复给定任务的防崩溃方法。到目前为止我发现了什么:

我试图避免为此任务构建一个特殊程序,因为它不是崩溃和错误证明。我也会浪费运行程序的有用资源。

我正在寻找一些现成的、广泛使用的、开发良好的东西。 ATrigger 不支持重复我发现的任务,而且我不喜欢网络调用,因为它们不太安全。

你可能知道的任何其他方式?

【问题讨论】:

  • 正如 Mike 建议的那样:crontab -e,然后写一行 "* *,1 * * * x your fulll path command" ... cron.nmonitoring.com/cron-generator.html?hours%5B%5D=*&hours%5B%5D=1&cmd=x&pingsub =1
  • @Behe Anacron 仅支持 24 小时重复任务,根据他们的网站 anacron.sourceforge.net 他们不保证执行时间。
  • 你说得对,我没有正确阅读问题。我将删除我的愚蠢评论,以免导致某些人产生错误的想法。
  • @venergiac cron 在启动时是否默认启动?
  • 如果安装了cron,它会在启动时默认启动。

标签: linux scheduled-tasks task


【解决方案1】:

答案可以在 cmets 中找到,但要明确:

安装cron。设置你的 crontab:crontab -e 根据您的要求,为您需要重复的每个任务添加一行。

# Execute this every hour at fifteen-minutes-past
15 * * * *   /path/to/command

# Execute this every fourth hour at zero-minutes
0 */4 * * *  /path/to/other-command

【讨论】:

    【解决方案2】:

    我是ATrigger 团队中的一员。澄清一下,ATrigger 完全支持重复任务。在所有库中都有可选的count 参数,因此在 REST API 中也是如此。

    鉴于 ATrigger 是一种调度工具,在大多数情况下安全性不是问题,我们已经实施了标准的安全步骤,包括域验证、IP 白名单和请求验证,以确保所有请求都是有效的。

    ATrigger::doCreate("10minute", "http://www.example.com/myTask?something", $tags, $firstDate, $retries, $count, $postData);
    

    【讨论】:

    • 嘿@Kousha 需要关于触发的帮助。想知道RestAPI的“postData”参数中传递数据的格式。谢谢您的帮助。在这种情况下,文档帮助不大。
    • @AkshayR。据我记得,它接收表单序列化信息(字符串),并将与接收到的数据一样传递。
    猜你喜欢
    • 2011-09-25
    • 2012-11-18
    • 1970-01-01
    • 1970-01-01
    • 2010-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多