Shoryuken
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 3.0 or greater.
Installation
Add this line to your application's Gemfile:
gem 'shoryuken'And then execute:
$ bundleUsage
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/ruby-shoryuken/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 versions, execute
bundle exec rake specTo run all Rails-related specs against all supported versions of Rails, execute
bundle exec appraisal rake spec:railsTo 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:integrationTo release a new version
Compare latest tag with HEAD:
git log $(git describe --tags --abbrev=0)..HEAD --onelinethen update CHANGELOG.md.
Update version in lib/shoryuken/version.rb with the appropriate version number SEMVER.
then run:
bundle exec rake release