【问题标题】:what's the difference between rufus-scheduler and a cron?rufus-scheduler 和 cron 有什么区别?
【发布时间】:2011-07-25 19:56:57
【问题描述】:

https://github.com/jmettraux/rufus-scheduler 声明:

rufus-scheduler 是一个用于调度代码片段(作业)的 Ruby gem。它理解在某个时间、某个时间、每 x 次或仅通过 CRON 语句运行作业。

rufus-scheduler 不能替代 cron/at,因为它在 Ruby 内部运行。

如果它在 ruby​​ 中运行呢?我不能在 ruby​​ 中使用系统命令访问 cron 吗?

【问题讨论】:

  • 你可以访问cron,但你的意思可能是crontab,它是用来查看和编辑cron表的。 Mac OS 和 Linux 上还有 atbatch 可用,您也可以通过 system%x{} 从 Ruby 访问它们,这对于设置在特定时间发生的一次性作业很有用,给定偏移量,或当系统负载允许时。
  • 我的意思是安排作业。 cron 不能做这一切吗? rufus 甚至有 cron 的方法,对吧?
  • 我认为 rufus-scheduler 适合那些不习惯使用 crontab、at 或 batch 的人。 Cron 做重复/周期性的工作。 at 和 batch 用于一次性作业,因为这两个命令不支持自动重复命令。所以 rufus-scheduler 包装了其他命令,但是如果您对命令行和其他命令感到满意,我认为它不会给您带来太多好处。
  • 我明白了,谢谢。如果你能给出这个答案,我可以接受:)

标签: ruby cron rufus-scheduler


【解决方案1】:

rufus-scheduler 是一个“in-ruby-process”调度程序。它根本不是 cron/at 的替代品。

rufus-scheduler 不是为那些不习惯在命令行中使用 cron/at 的人设计的,它是为那些愿意直接在他们的 ruby​​ 进程中安排东西的人设计的(并理解它的含义)。

如果 rufus-scheduler 旨在替代 cron/at,它会为作业提供某种持久性,但它没有。

对此的另一种看法:http://adam.heroku.com/past/2010/6/30/replace_cron_with_clockwork/

【讨论】:

    【解决方案2】:

    我认为 rufus-scheduler 适合那些不习惯使用系统的 crontabatbatch 的人。

    cron 执行重复/周期性作业,atbatch 用于一次性作业,因为这两个命令不支持自动重复命令。

    所以 rufus-scheduler 正在创建其他命令的功能,但是如果您对命令行和其他命令感到满意,那么在我看来,它对您没什么好处。

    我没有使用它,但确实查看了源代码,我担心它似乎 rufus-scheduler 依赖于线程,这意味着 Ruby 将使您的应用程序在后台运行,等待适当的时间或间隔跑步。如果进程被杀死,或者机器重新启动,它看起来好像不会运行作业,这与系统命令在重新启动或应用程序不在内存中时会持续存在的主要区别。

    我们在工作中经常使用 cron 来完成工作;它是一种行业标准工具,每台 Linux 和 Mac 计算机都在全天运行 cron 计划的作业,尽管大多数用户并不知道。

    【讨论】:

      猜你喜欢
      • 2016-12-20
      • 2016-12-07
      • 2014-06-07
      • 2014-12-04
      • 2014-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-28
      相关资源
      最近更新 更多