-
-
Notifications
You must be signed in to change notification settings - Fork 290
From Sidekiq to Shoryuken
Pablo Cantero edited this page Jul 2, 2017
·
29 revisions
Shoryuken is a drop-in replacement for Sidekiq, the code changes should be minor s/sidekiq/shoryuken
. But as Shoryuken "reads" messages from SQS, instead of Redis, you will probably need a three steps migration:
- Stop sending jobs to Sidekiq
- Start using Shoryuken
- Keep Sidekiq running until it consumes all pending jobs.
class MyWorker
include Sidekiq::Worker
sidekiq_options queue: 'my_queue'
def perform(arg)
# ...
end
end
class MyWorker
include Shoryuken::Worker
shoryuken_options queue: 'my_queue', auto_delete: true
def perform(sqs_msg, arg)
# ...
end
end
concurrency: 25
pidfile: tmp/pids/sidekiq.pid
queues:
- default
- [myqueue, 2]
concurrency: 25
pidfile: tmp/pids/shoryuken.pid
queues:
- default
- [myqueue, 2]
MyWorker.perform_async('test')
MyWorker.perform_async('test')
bundle exec sidekiq -r ./my_worker.rb -q my_queue
bundle exec shoryuken -r ./my_worker.rb -q my_queue