basic use of sidekiq

来源:互联网 发布:进销存数据库表设计 编辑:程序博客网 时间:2024/05/20 02:21

参考页面

https://github.com/mperham/sidekiq

https://github.com/mperham/sidekiq/wiki/Getting-Started

强烈推荐这个视频 

https://www.youtube.com/watch?v=bfPb1zD91Rg&index=1&list=PLjeHh2LSCFrWGT5uVjUuFKAcrcj5kSai1



$mkdir  sidekiq_playground$cd sidekiq_playground/$vim Gemfile
添加一个gem

source "https://rubygems.org"gem "sidekiq"

新增worker.rb

vim worker.rb

require 'sidekiq'Sidekiq.configure_client do |config|  config.redis = { db: 1 } endSidekiq.configure_server do |config|  config.redis = { db: 1 } endclass OurWorker  include Sidekiq::Worker  def perform(complexity)    case complexity    when "super_hard"      sleep 20      puts "super hard! Really took quite a bit of effort"    when "hard"      sleep 10      puts "hard! That was o bit of work"    else      sleep 1      puts "That wasn't a lot of effort"    end   end end

安装redis,启动sidekiq

$sudo apt-get install redis-server$ bundle exec sidekiq -r ./worker.rb

执行

$ bundle exec irb -r ./worker.rb irb(main):001:0> OurWorker.perform_async("easy")   //立刻执行=> "d40dc832d93f50c00afd2ab4"irb(main):002:0> OurWorker.perform_async("hard")=> "33356c6a0c7cd55047d40670"
irb(main):003:0> OurWorker.perform_in(5,"easy")   //5秒后执行=> "7a517f4305ff6105aa408b4f"  
查看启动页面里的输出

$ bundle exec sidekiq -r ./worker.rb2016-03-31T07:11:15.792Z 30945 TID-gnktzwzl4 INFO: Booting Sidekiq 4.1.1 with redis options {:db=>1, :url=>nil}         m,         `$b    .ss,  $$:         .,d$    `$$P,d$P'    .,md$P"'     ,$$$$$bmmd$$$P^'   .d$$$$$$$$$$P'   $$^' `"^$$$'       ____  _     _      _    _   $:     ,$$:       / ___|(_) __| | ___| | _(_) __ _   `b     :$$        \___ \| |/ _` |/ _ \ |/ / |/ _` |          $$:         ___) | | (_| |  __/   <| | (_| |          $$         |____/|_|\__,_|\___|_|\_\_|\__, |        .d$$                                       |_|2016-03-31T07:11:15.792Z 30945 TID-gnktzwzl4 INFO: Running in ruby 2.1.2p95 (2014-05-08 revision 45877) [x86_64-linux]2016-03-31T07:11:15.792Z 30945 TID-gnktzwzl4 INFO: See LICENSE and the LGPL-3.0 for licensing details.2016-03-31T07:11:15.792Z 30945 TID-gnktzwzl4 INFO: Upgrade to Sidekiq Pro for more features and support: http://sidekiq.org2016-03-31T07:11:15.793Z 30945 TID-gnktzwzl4 INFO: Starting processing, hit Ctrl-C to stop2016-03-31T07:13:17.062Z 30945 TID-gnku2xt9s OurWorker JID-d40dc832d93f50c00afd2ab4 INFO: startThat wasn't a lot of effort2016-03-31T07:13:18.065Z 30945 TID-gnku2xt9s OurWorker JID-d40dc832d93f50c00afd2ab4 INFO: done: 1.003 sec2016-03-31T07:14:08.887Z 30945 TID-gnktztls4 OurWorker JID-33356c6a0c7cd55047d40670 INFO: starthard! That was o bit of work2016-03-31T07:14:18.887Z 30945 TID-gnktztls4 OurWorker JID-33356c6a0c7cd55047d40670 INFO: done: 10.0 sec









0 0