A Resque plugin to add functionality to pause resque jobs through the web interface. Using a `pause` allows you to stop the job for a slice of time. The job finish the process it are doing and don't get a new task to do, until the queue is released. You can use this functionality to do some maintenance whithout kill workers, for example.
Records stats of each sidekiq queue and exposes APIs to retrieve them
A priority queue which implements a lazy binomial heap. It supports the change priority operation, being suitable for algorithms like Dijkstra's shortest path and Prim's minimum spanning tree. It can be instantiated as a min-priority queue as well as a max-priority queue.
This plugin provides native RabbitMQ instrumentation for monitoring and metrics collection, including: service health, message, consumer, and queue health/metrics via `rabbitmq_management`, and more
Super simple job queue over AMQP
Ensures that for a given queue, only one worker is working on a job at any given time. Example: require 'resque/plugins/lonely_job' class StrictlySerialJob extend Resque::Plugins::LonelyJob @queue = :serial_work def self.perform # only one at a time in this block, no parallelism allowed for this # particular queue end end
A Sinatra app to view/manage beanstalkd queues that can be embedded in a Rails app similar to what's available in Resque
Superbolt is comprised of a standalone app, and a queue-like queue for sending messages between services and applications.
Redis reliable queue pattern implemented in Sidekiq
A simple event bus on top of Resque. Publish and subscribe to events as they occur through a queue.
where the wild things are. err, when resque gets stuck
A simple mechanism to create custom log files based on queue names of Resque workers.
resque-restriction is an extension to resque queue system that restricts the execution number of certain jobs in a period time, the exceeded jobs will be executed at the next period.
This gem provides asynchronous indexing to Solr for the sunspot gem. It uses a pluggable model for the backing queue and provides support for ActiveRecord, DataMapper, and MongoDB out of the box.
SQS is a Ruby interface to Amazon's Simple Queue Service. SQS uses the Query API, exposing all the published API calls, plus a few more. For more information on the Simple Queue Service, see http://www.amazonaws.com
Simple job queue system based on mongodb
Command line client for Sidekiq. Push worker classes to queue from the cli ...
A Resque plugin. Two or more jobs with the same lock cannot be processed simultaneously by multiple workers. When this situation occurs the second job gets pushed back to the queue.
Queue stuff in memory
Our own parallel cucumber with queue and workers
A resque plugin for specifying the priority between queues that workers use to determine what to work on next
Declare job classes that can be run by a variety of queueing backends.
Ruby client for the Kestrel queue server
Queue stuff in memory
Light-weight priority queue implementation using a heap
This gem makes Rails console sessions less dangerous in specified environments by warning, color-coding, auto-sandboxing, and allowing read-only external connections (disables job queueing, non-GET requests, etc.)
Simple asynchronous emails with Resque
Simple Scheduler adds the ability to enhance Heroku Scheduler by using Sidekiq to queue jobs in the future. This allows for defining specific run times (Ex: Every Sunday at 4 AM) and running tasks more often than Heroku Scheduler's 10 minute limit.
Client library for Queuery Redshift HTTP API
Many other Ruby libraries that simplify parallel execution support one primary use case - crunching through a large queue of small, similar tasks as quickly and efficiently as possible. This library primarily supports the use case of executing a few larger and unrelated tasks in parallel, automatically managing the stdout and passing return values back to the main process. This library was created to be used by Puppet's Beaker test framework to enable parallel execution of some of the framework's tasks, and allow users to execute code in parallel within their tests.
A simple mailer for newsletters with basic campaign management, queue and unsubscribe support. To be used within Rails.
Loops is a small and lightweight framework for Ruby on Rails, Merb and other ruby frameworks created to support simple background loops in your application which are usually used to do some background data processing on your servers (queue workers, batch tasks processors, etc).
Runs a thread inside your Sidekiq processes to report metrics to CloudWatch useful for autoscaling and keeping an eye on your queues. Optimised for Sidekiq Enterprise with leader election, but works everywhere!
This gem adds MQTT (Message Queue Telemetry Transport) protocol support to EventMachine.
Resque-Sliders is a plugin for Resque that enables you to control multiple hosts' running resque workers with a monitor PID watching over them. From the resque-web UI, you can add/delete/change which queues are running on each host running the monitor PID. Sliders are in the UI and allow you to adjust how many workers on either host should be running.
Performant priority queue in pure ruby with support for changing priority using pairing heap data structure
Library to maintain a forking queue of Cucumber processes, with optional VNC displays.
The core event component of logstash, the scalable log and event management tool
resque-throttle is an extension to the resque queue system that restricts the frequency in which certain jobs are run. Add more description here.
A universal interface for Ruby queueing backends.
Normally resque processes queues in a fixed order. This can lead to jobs in queues at the end of the list not getting process for very long periods. resque-fairly provides a mechanism where by workers are distributed across the set of queues with pending jobs fairly. This results in a much more predictable mean time to handling for jobs in queues that are not the first in the list.
Let's you pause/unpause individual sidekiq queues.
RightAgent provides a foundation for running an agent on a server to interface in a secure fashion with other agents in the RightScale system using RightNet, which operates in either HTTP or AMQP mode. When using HTTP, RightAgent makes requests to RightApi servers and receives requests using long-polling or WebSockets via the RightNet router. To respond to requests it posts to the HTTP router. When using AMQP, RightAgent uses RabbitMQ as the message bus and the RightNet router as the routing node to make requests; to receives requests routed to it by the RightNet router, it establishes a queue on startup. The packets are structured to invoke services in the agent represented by actors and methods. The RightAgent may respond to these requests with a result packet that the router then routes to the originator.
Starling is a lightweight, transactional, distributed queue server
RSpec Matchers and helpers for QueueClassicPlus
Compatible with Resque 1.x. Use Resque.push if you are using >= 2.x. Resque is great. So is job processing with redis. Our biggest drawback has been that resque requires the class that will be processing a job to be loaded when the job is enqueued. But what happens when the implementing job is defined in a separate application and isn't currently loaded into memory? Enter Resque Remote. Resque Remote's simple goal is to allow you to add a job to a queue with a string identifier for the class rather than the class constant. It is assumed that the worker-side of the equation _will_ have the class in memory and hence will be able to run it no problem. Feedback, comments and questions are welcome at bj [dot] neilsen [at] gmail [dot] com.
A Resque plugin. If you want only one instance of your job queued at a time, extend it with this module. For example: class ExampleJob extend Resque::Jobs::Queue::Lock def self.perform(repo_id) heavy_lifting end end
HireFire automatically "hires" and "fires" (aka "scales") Delayed Job and Resque workers on Heroku. When there are no queue jobs, HireFire will fire (shut down) all workers. If there are queued jobs, then it'll hire (spin up) workers. The amount of workers that get hired depends on the amount of queued jobs (the ratio can be configured by you). HireFire is great for both high, mid and low traffic applications. It can save you a lot of money by only hiring workers when there are pending jobs, and then firing them again once all the jobs have been processed. It's also capable to dramatically reducing processing time by automatically hiring more workers when the queue size increases.
Queue any method in any class or instance with no need for additional Worker class and no extra code
job_boss allows you to queue jobs which are unqueued by a "Job Boss" daemon and handed off to workers to process