首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >运行具有动态变化周期的周期性任务

运行具有动态变化周期的周期性任务
EN

Stack Overflow用户
提问于 2015-01-19 06:14:00
回答 1查看 341关注 0票数 0

我的任务是监视来自股票网站的一些信息。

它应该每隔10分钟就检查一下网站的股票状况,

一旦股票指数上升,检查周期应改为每5秒

如果sotck指数下降,则检查周期应为10分钟

用于运行定期任务

我发现gem whenever可以执行cron任务。但是我不知道如何动态地改变检查周期?有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2015-01-19 07:08:06

对于这个简单的任务,我将创建两个不同的cron任务,一个是“全局”变量,表示是否应该实际运行频繁的任务。这样,在索引上升的情况下,每10分钟的任务将始终运行,而每5秒的任务将被运行。

代码语言:javascript
复制
class Checker
  @@rising = false
  class << self
    def check
      @@rising = actual_check > 0 # core check func
    end
    def freq_check
      check if @@rising
    end
    def rare_check
      check
    end
  end
end

every 10.minutes do
  runner "Checker.rare_check"
end
every 5.seconds do
  runner "Checker.freq_check"
end

这绝对不是一个最优雅的解决方案,但它确实很有用,而且非常容易处理/测试。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28018876

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档