Description
Shoryuken sho-ryu-ken is a super-efficient AWS SQS thread-based message processor.
Shoryuken alternatives and similar gems
Based on the "Queue" category.
Alternatively, view Shoryuken alternatives based on common mentions on social networks and blogs.
-
Resque
Resque is a Redis-backed Ruby library for creating background jobs, placing them on multiple queues, and processing them later. -
Sucker Punch
Sucker Punch is a Ruby asynchronous processing library using concurrent-ruby, heavily influenced by Sidekiq and girl_friday.
Judoscale - Save 47% on cloud hosting with autoscaling that just works

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Shoryuken or a related project?
README
I'm looking for Shoryuken maintainers, are you interested on helping to maintain Shoryuken? Fill up this form https://forms.gle/8kTso8ixa9Sfp6rJ9
Shoryuken
[Shoryuken](shoryuken.jpg)
Shoryuken sho-ryu-ken is a super-efficient Amazon SQS thread-based message processor.
Key features
- Rails Active Job
- Queue Load balancing
- Concurrency per queue
- Long Polling
- Batch processing
- Auto extend visibility timeout
- Exponential backoff
- Middleware support
- Amazon SQS CLI. See
shoryuken help sqs
Requirements
Ruby 2.4 or greater.
Installation
Add this line to your application's Gemfile:
gem 'shoryuken'
If you are using AWS SDK version 3, please also add this line:
gem 'aws-sdk-sqs'
The extra gem aws-sdk-sqs
is required in order to keep Shoryuken compatible with AWS SDK version 2 and 3.
And then execute:
$ bundle
Usage
Check the Getting Started page.
More Information
For more information check the wiki page.
Credits
Mike Perham, creator of Sidekiq, and everybody who contributed to it. Shoryuken wouldn't exist as it is without those contributions.
Contributing
- Fork it ( https://github.com/phstc/shoryuken/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
Testing
To run all unit specs against the latest dependency vesions, execute
bundle exec rake spec
To run all Rails-related specs against all supported versions of Rails, execute
bundle exec appraisal rake spec:rails
To run integration specs, start a mock SQS server on localhost:5000
. One such option is cjlarose/moto-sqs-server. Then execute
bundle exec rake spec:integration