码迷,mamicode.com
首页 > 其他好文 > 详细

rails中是如何实现定时任务的之sidetip

时间:2016-07-17 21:10:55      阅读:538      评论:0      收藏:0      [点我收藏+]

标签:

环境:ubuntu14.4,ruby2.1.5, rails4.2

sidetip 依赖于sidekiq,所以在Gemfile里要添加sidekiq。

一、新一个rais项目:rails new schedule_job --skip-bundle

      进入项目文件夹: cd schedule_job

  打开Gemfile文件:vim Gemfile

  把source ‘https://rubygems.org‘改为source ‘https://ruby.taobao.org‘。

  在文件里加入:gem ‘sidekiq‘,gem ‘sidetip‘

  然后运行:bundle install

  安装redis-server: sudo apt-get install redis-server

  redis-cli进入redis,运行ping

  PONG说明安装成功。

二、新测试文件:

  在app/jobs文件夹下产生文件,新建定时任务类:MySchedule

  vim my_schedule.rb,修改为:

  class MySchedule
    include Sidekiq::Worker
    include Sidetiq::Schedulable

    recurrence { daily }

    def perform
      puts "sidetip 测试"
    end
  end

   保存退出。

  在config/application.rb里面添加: config.active_job.queue_adapter = :sidekiq

三、运行sidekiq,会出现如下图:技术分享

   这个是到午夜执行的任务。

四、测试:

  修改my_schedule.rb文件为:

  class MySchedule
    include Sidekiq::Worker
    include Sidetiq::Schedulable

    recurrence do
      minutely(1)
    end

    def perform
      puts "sidetip 测试"
    end
  end

  改为每一分钟执行一次。

  执行sidekiq命令,会出现如图:

技术分享

 

  运行成功。

 

 

rails中是如何实现定时任务的之sidetip

标签:

原文地址:http://www.cnblogs.com/limx/p/5679288.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!