锁定老帖子 主题:简简单单在rails中做定时任务
精华帖 (0) :: 良好帖 (6) :: 新手帖 (16) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-07-27
最后修改:2009-09-23
在平时的开发过程中,经常会遇到一些定时任务的需求,比如定时报表的生成,一般是在夜间的某个时间段进行,或者是每10分钟清空一些临时表的任务,记得以前有人提出过一个 BackgrounDrb 问题,个人认为BackgrounDrb不是那么好用,Robbin提出的是利用linux shell做,由于unix操作系统自带有进程调度系统cron,所以定时执行rake就可以了,但如果做一些复杂的定时操作,那么势必会造成复杂的shell脚本,个人认为一、不利于维护,二、在切换开发环境的时候不是很方便,本着能用简单的技术解决的问题就不要用复杂的技术的原则,推荐一下rufus-scheduler http://rufus.rubyforge.org/rufus-scheduler/ ,貌似这个是日本人写的,看看它的使用说明,感觉作者很有匠人的气质,这个东西用起来真贴心,这也充分说明了拿ruby做系统维护也是一件体验很棒的事情
引用
gem install rufus-scheduler
引用
require 'rubygems' require 'rufus/scheduler' scheduler = Rufus::Scheduler.start_new scheduler.every("2s") do puts Time.now end
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-07-27
惊现老大发贴。
ruby或者说rails中的定时任务的解决方案太多了,我目前见过的就不少。 |
|
返回顶楼 | |
发表时间:2009-07-27
目前看来,ruby的程序都还不太适合作为长期跑的进程存在.
它们的使用方式还是运行一段时间就exit,需要的话再restart比较好. |
|
返回顶楼 | |
发表时间:2009-07-27
有了crontab,为啥要用这个?
|
|
返回顶楼 | |
发表时间:2009-07-28
whenever 也不错
|
|
返回顶楼 | |
发表时间:2009-07-28
Raecoo 写道 whenever 也不错
whenever貌似就是把ruby的东西翻译成crontab... |
|
返回顶楼 | |
发表时间:2009-07-28
本来是用whenever挺好的
现在项目要在window下跑定时任务:( |
|
返回顶楼 | |
发表时间:2009-07-28
关于定时操作,记得在rubyinside里边就见过不少。少说有3,4个了
用cron就非常方便了,定期跑跑ruby脚本,rake任务就ok了 |
|
返回顶楼 | |
发表时间:2009-07-29
mccxj 写道 关于定时操作,记得在rubyinside里边就见过不少。少说有3,4个了
用cron就非常方便了,定期跑跑ruby脚本,rake任务就ok了 为什么rails里面有个database migrate?一样可以用sql脚本完成啊 |
|
返回顶楼 | |
发表时间:2009-07-29
下一站,火星 写道 mccxj 写道 关于定时操作,记得在rubyinside里边就见过不少。少说有3,4个了
用cron就非常方便了,定期跑跑ruby脚本,rake任务就ok了 为什么rails里面有个database migrate?一样可以用sql脚本完成啊 一直也没有找到合适的定是任务? |
|
返回顶楼 | |