加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails-3 – 使用delayed_job的重复计划

发布时间:2020-12-17 04:03:49 所属栏目:百科 来源:网络整理
导读:是否可以使用delayed_job执行以下操作: 定义一个名为Tasks的类 在每5分钟运行一次任务中的方法:Tasks.do_processing 当下一个5分钟周期出现时,只有在前一个do_processing完成后才运行Tasks.do_processing 这是我必须自己创建的东西,还是delayed_job(或其他
是否可以使用delayed_job执行以下操作:

>定义一个名为Tasks的类
>在每5分钟运行一次任务中的方法:Tasks.do_processing
>当下一个5分钟周期出现时,只有在前一个do_processing完成后才运行Tasks.do_processing

这是我必须自己创建的东西,还是delayed_job(或其他一些gem /插件)可以做到这一点?

PS.我知道操作系统级别的cron作业,但是如果我使用它,则意味着每次cron“触发”它都会重新加载整个Rails环境,而delayed_job只需要加载一次.

解决方法

您可以考虑创建一个Rake任务或其他类似的独立进程来处理这个功能,然后用 Daemons将其包装起来:

What is Daemons?

Daemons provides an easy way to wrap
existing ruby scripts (for example a
self-written server) to be run as a
daemon and to be controlled by simple
start/stop/restart commands.

If you want,you can also use daemons
to run blocks of ruby code in a daemon
process and to control these processes
from the main application.

Besides this basic functionality,daemons offers many advanced features like exception backtracing and logging (in case your ruby script crashes) and monitoring and automatic restarting of your processes if they crash.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读