Sucker Punch
rb-inotify
Our great sponsors
Sucker Punch | rb-inotify | |
---|---|---|
2 | 1 | |
2,654 | 314 | |
- | 0.0% | |
4.3 | 0.0 | |
4 months ago | about 3 years ago | |
Ruby | Ruby | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Sucker Punch
-
Simple Thread/Server question
I would suggest you use something like sucker punch to do this https://github.com/brandonhilkert/sucker_punch
-
Asynchronous Background Processing for Ruby or Rails using AWS Lambda Extensions.
Ever since writing this post last year on Using New Relic APM with Rails on AWS Lambda, I have always wanted to find a way to send APM data in a way that did not add extra milliseconds to the application's response times. Likewise, for smaller projects it would be nice to have a lightweight alternative to Lambdakiq for ActiveJob similar to Brandon Hilkert's popular SuckerPunch gem. Today we have both with the LambdaPunch gem.
rb-inotify
-
Asynchronous Background Processing for Ruby or Rails using AWS Lambda Extensions.
Because AWS Lambda freezes the execution environment after each invoke, there is no "process" that continues to run after the handler's response. However, thanks to Lambda Extensions along with its "early return", we can do two important things. First, we leverage the rb-inotify gem to send the extension process a simulated POST-INVOKE event. We then use Distributed Ruby (DRb) from the extension to signal your application to work jobs off a queue. Both of these are synchronous calls. Once complete the LambdaPunch extensions signals it is done and your function is ready for the next request.
What are some alternatives?
Sidekiq - Simple, efficient background processing for Ruby
Delayed::Job - Database based asynchronous priority queue system -- Extracted from Shopify
Resque - Resque is a Redis-backed Ruby library for creating background jobs, placing them on multiple queues, and processing them later.
Gush - Fast and distributed workflow runner using ActiveJob and Redis
Sneakers - A fast background processing framework for Ruby and RabbitMQ
Backburner - Simple and reliable beanstalkd job queue for ruby
Karafka - Ruby and Rails efficient multithreaded Kafka processing framework
Sidekiq::Undertaker - Sidekiq::Undertaker allows exploring, reviving or burying dead jobs.
Que - A Ruby job queue that uses PostgreSQL's advisory locks for speed and reliability.
RocketJob - Ruby's missing background and batch processing system
Shoryuken - A super efficient Amazon SQS thread based message processor for Ruby
Bunny - Bunny is a popular, easy to use, mature Ruby client for RabbitMQ