Ruby 定时任务之一(初步尝试)

2014-11-23 23:57:05 · 作者: · 浏览: 14

最近工作需要用到定时任务。原来写java的时候也用到过类似的Scheduler的功能。


Ruby语言中也有同样功能的工具。rufus-scheduler。


下面介绍一下rufus-scheduler。


  定义: a Ruby gem for scheduling pieces of code (jobs). It understands running a job AT a certain time, IN a certain time, EVERY x time or simply via a CRON statement.


安装:gem install rufus-scheduler(gem安装是前提,再次不多言)



使用:rufus-scheduler可以指定在特定时间时执行,在从此刻开始间隔多长时间执行,在特定时间间隔内循执行,在特定的cron时间执行。例子如下:


1:指定特定时间(或者超过指定时间)执行


输出结果:


如果设置的at时间在程序运行之前,比如设置的at时间为:2013-10-25 08:39:36。程序运行时的时间为2013-10-25 08:34:36。那么程序运行时候就执行设置的事件


举个例子:



输出结果:



2:在从此刻开始间隔多长时间执行



输出结果:



3:在特定时间间隔内执行



输出结果:


4:在特定的cron时间执行


输出结果:


至于cron的使用方法,请参考cron相关文章。



此文只是Ruby定时任务的初步,在下一篇中和大家一起进入深一步的分析。