sidekiq异步处理任务

25 篇文章 0 订阅

安装

gem install sidekiq
或修改Gemfile之后bundle install

gem 'sidekiq'
使用方法:
1 定义异步处理worker类
将worker类放置于app/workers


class HardWorker
  include Sidekiq::Worker

  def perform(name, count)
    puts 'Doing hard work'
  end
end

2 加入异步任务处理队列
在controller或model中调用

HardWorker.perform_async('lissdy', 5)
3 定义配置文件config/sidekiq.yml

:verbose: false
:pidfile: ./tmp/pids/sidekiq.pid
:logfile: ./log/sidekiq.log
:queues:
  - [phoenix_job,7]
  - [default, 2]

staging:
  :concurrency: 5
development:
  :concurrency: 5
production:
  :concurrency: 50
4 启动服务
在rails应用根目录下执行命令:

bundle exec sidekiq  -C config/sidekiq.yml 调试启动方式
bundle exec sidekiq  -C config/sidekiq.yml -d 后台启动方式
bundle exec sidekiq  -C config/sidekiq.yml -d -e production 指定环境启动
监控sidekiq
安装所需包,Gemfile中加入

gem 'sinatra', require: false
gem 'slim'

bundle install

修改rount.rb,挂载访问地址

require 'sidekiq/web'
Ironmine::Application.routes.draw do
  mount Sidekiq::Web, at: "/sidekiq" 
......
end

访问/sidekiq,对sidekiq执行状态进行监控


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值