사이트킥(sidekiq) - 레일즈 비동기 처리 지원 큐

:concurrency: 5 :pidfile: tmp/pids/sidekiq.pid staging: :concurrency: 10 production: :concurrency: 20 :queues: - default - [myqueue, 2] ```

레디스 서버 설정

sidekiq의 큐 데이터베이스가 되는 redis 서버를 임의로 지정할 수 있다.

Sidekiq.configure_server do |config|
  config.redis = { :url => 'redis://redis.example.com:7372/12', :namespace => 'mynamespace' }
end

Sidekiq.configure_client do |config|
  config.redis = { :url => 'redis://redis.example.com:7372/12', :namespace => 'mynamespace' }
end

Job Check 시간 간격 설정

Sidekiq.configure_server do |config|
  config.poll_interval = 15
end

큐 지정

sidekiq에서 사용하는 큐를 임의로 지정할 수 있다.

class ImportantWorker
  include Sidekiq::Worker
  sidekiq_options :queue => :critical

  def perform(*important_args)
    puts "Doing critical work"
  end
end

해시 키

레일즈에서는 해시 키로 심볼과 문자열 어떤 걸 사용해도 무방하다. 하지만 sidekiq에서는 해시 키로 심볼을 사용하면 제대로 읽어들이지 못 한다.

사이드킥 프로(Sidekiq Pro)

참조


Who am I?