• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

Still_Walking

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

ruby on rails 里使用SideKiq 做后台任务

rails中使用sidekiq 做后台任务的例子。

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

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

      进入项目文件夹: cd active_job

  打开Gemfile文件:vim Gemfile

  把source 'https://rubygems.org'改为source 'https://ruby.taobao.org',在文件里加入:gem 'sidekiq'

  然后运行:bundle install

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

  redis-cli进入redis,运行ping

  PONG说明安装成功。

三、试一下sidekiq

  运行sidekiq, 进入任务监控页面

  会出现下图:

  

 

四、测试:

  新建job: rails g job restJob

  会在app/jobs文件夹下产生文件rest_job.rb,打开这个文件: vim rest_job.rb,修改perform方法,这里作为测试添加 puts "SideKiq 测试", 保存退出。

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

  Rails Console进行测试: rails c

  输入:RestJob.set(wait: 1.minutes).perform_later   

  这里设置为1分钟后执行,如果没有报错,说明任务已经添加成功。

  如图:  

  1分钟后会在sidekiq的监视窗口里看到输入的“SideKiq 测试”:

  

  

 到此说明运行一切正常。

posted on 2016-07-17 17:49  limanxian  阅读(2621)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3