锁定老帖子 主题:简简单单在rails中做定时任务
精华帖 (0) :: 良好帖 (6) :: 新手帖 (16) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-07-29
选插件的话就delayed-job吧
|
|
返回顶楼 | |
发表时间:2009-08-03
我们现在是用 crond + rake,用下来还不错的。
|
|
返回顶楼 | |
发表时间:2009-08-04
cron + rake是王道
再复杂的都可以写在rake里面。和shell无关 |
|
返回顶楼 | |
发表时间:2009-08-12
saberma 写道 本来是用whenever挺好的
现在项目要在window下跑定时任务:( script/runner rails 原装产品,跨平台 |
|
返回顶楼 | |
发表时间:2009-08-20
火星叔叔马丁 写道 刑天战士 写道 有了crontab,为啥要用这个?
老刑死脑筋了 ruby提倡的不就是yet another way 话说有老婆的人 就不能去cj看showgirl了? 我笑喷了。。。 |
|
返回顶楼 | |
发表时间:2009-08-20
如果是任务中涉及到 数据库层面的,我们是直接cron+存储过程 的。
|
|
返回顶楼 | |
发表时间:2009-11-19
这个有这个问题啊,如果后端是多个mongrel进程,那么多造成多个同时执行的重复任务呢
|
|
返回顶楼 | |
发表时间:2009-11-24
最后修改:2009-11-24
机器人 写道 这个有这个问题啊,如果后端是多个mongrel进程,那么多造成多个同时执行的重复任务呢
是的,我就遇到这个问题了... 这两天忙其他项目,还没时间去管呢。 机器人同学也遇到了? |
|
返回顶楼 | |
发表时间:2010-01-07
这样的话,如果启动多个项目实例就会有多个运行定时任务,这样怎么解决?
|
|
返回顶楼 | |
发表时间:2010-01-07
最后修改:2010-01-07
所以说不要将这个脚本改在初始化目录中,你可以把它放在script目录里,作为一个单独的后台ruby进程。
require 'rubygems' require 'rufus/scheduler' scheduler = Rufus::Scheduler.start_new # 每天早上10:10,将订单提示支付记录的短信发出 scheduler.cron '10 10 * * *' do system("rake sms:send_tip_pay_messages RAILS_ENV=production") end scheduler.join # 要放上这个来居启动线程,而在初始化目录中是由rails启动时顺带启动的 然后在项目目录中执行: ruby script/scheduler.rb & 就ok了。 |
|
返回顶楼 | |