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. -
Delayed::Job
Database based asynchronous priority queue system -- Extracted from Shopify -
Sneakers
A fast background processing framework for Ruby and RabbitMQ -
Sucker Punch
Sucker Punch is a Ruby asynchronous processing library using concurrent-ruby, heavily influenced by Sidekiq and girl_friday. -
Que
A Ruby job queue that uses PostgreSQL's advisory locks for speed and reliability. -
GoodJob
Multithreaded, Postgres-based, ActiveJob backend for Ruby on Rails. -
Bunny
Bunny is a popular, easy to use, mature Ruby client for RabbitMQ -
March Hare
Idiomatic, fast and well-maintained JRuby client for RabbitMQ -
Sidekiq Iteration
Make your long-running sidekiq jobs interruptible and resumable. -
Sidekiq::Undertaker
Sidekiq::Undertaker allows exploring, reviving or burying dead jobs.
Clean code begins in your IDE with SonarLint
* 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