A circular queue (also called a circular buffer or ring buffer) is useful when buffering data streams
Measure queueing metrics for Rack apps
Resque-mongo is a fork of resque that uses mongo as a queue backend. Resque is a Redis-backed Ruby library for creating background jobs, placing those jobs on multiple queues, and processing them later. Background jobs can be any Ruby class or module that responds to perform. Your existing classes can easily be converted to background jobs or you can create new classes specifically to do work. Or, you can do both. Resque is heavily inspired by DelayedJob (which rocks) and is comprised of three parts: * A Ruby library for creating, querying, and processing jobs * A Rake task for starting a worker which processes jobs * A Sinatra app for monitoring queues, jobs, and workers.
Manage your organization's workflows entirely through Google Docs and irb. Mobilize schedules jobs, queues workers, sends failure notifications, and integrates mobilize-hadoop, -http, -mysql, and -mongodb packages to allow seamless transport of TSV and JSON data between any two endpoints.
Static publishing to S3 based on SQS messages
Command line utilies for interacting with AMQP compliant queues. The intention is provide simple management tools that can be used to complete ad hoc housework on an AMQP queue. In addition, simple scripts can be layered over the tools when needed.
Iudex is a general purpose web crawler and feed processor in ruby/java. The iudex-da gem provides a PostgreSQL-based content meta-data store and work priority queue.
Rate limit how many times a job can be run from a queue
The azure-signature library generates storage signatures for Microsoft Azure's cloud platform. You can use this to access Azure storage services - tables, blobs, queues and files.
Light weight job scheduling on top of Resque. Adds methods enqueue_at/enqueue_in to schedule jobs in the future. Also supports queueing jobs on a fixed, cron-like schedule.
Messaging system based on the reactor pattern. You can publish messages to a queue and then a demultiplexer runs an event loop which pops items from the queue and hands it over to a dispatcher. The dispatcher hands over the message to the appropriate handler. You can choose your own queueing service.
RubyGem to give quick access to Theme Park queue times (Alton Towers, Disney World Animal Kingdom, Disney World Epcot, Disney World Hollywood Studios, Disney World Magic Kingdom, Disneyland, Disneyland California Adventure, Disneyland Paris, Seaworld San Antonio, Seaworld San Diego, Seaworld Orlando, Thorpe Park)
A rate-limited Queue for EventMachine
Wouldn't be nice if you could directly queue your model method calls to Sidekiq? With Sidekiq::Delaty you can!
A fair way to queue work in multi-user systems.
This gem is a Ruby extension library providing an API to DrQueue, the open source render queue. Git, SWIG and SCons are required for building. See https://ssl.drqueue.org/redmine/projects/drqueue/wiki/RubyBindingsHowto for more information.
Asynchronous Priority Queue with EventMachine
Prioritize Sidekiq jobs within queues
Ruby extension that binds System V Inter-Process Communication: message queues, semaphores, and shared memory.
parallel rspec runner
resque plugin for automatically scaling workers based on the amount of time it takes a job to go through the queue and/or the length of the queue
= Ungulate According to Wikipedia, this can mean "hoofed animal". Camels have hooves. This is a gem for uploading and processing images using an Amazon Web Services stack. It comes with a few goodies: * ungulate_server.rb - simple queue runner that expects a YAML-encoded job description for RMagick * Ungulate::FileUpload - a model for e.g. Rails that does some cryptography stuff - example to follow * A view helper for Rails: "ungulate_upload_form_for" == Installation gem install ungulate == Documentation http://wiki.github.com/camelpunch/ungulate/ == Note on Patches/Pull Requests * Fork the project. * Make your feature addition or bug fix. * Add tests for it. This is important so I don't break it in a future version unintentionally. * Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull) * Send me a pull request. Bonus points for topic branches. == Copyright Copyright (c) 2011 Camel Punch Limited. See LICENSE for details.
Queues and Background Job Runners are becoming as ubiquitous to Rails applications as Databases. Why not treat each of them as the same generic component, conforming to an interface and convention that is well understood.
Testing support fot the Que queue
Light Queue wrapper tool
A unified interface for various messaging queues
A thread-safe rate-limited work queue, which allows for background and foreground operations.
Cloudist is a simple, highly scalable job queue for Ruby applications, it can run within Rails, DaemonKit or your own custom application. Refer to github page for examples
Allows you to turn your ActiveRecord models into queues.
This roughly mirrors the functionaly of Queue in allowing you to queue messages to one or more threads, and will block if the queue is empty, waking up when there is another message available.
Fork of Rock-Queue to run an SMPP Gateway
This gem is used to communicate to a server Janus through RabbitMQ software (Message-oriented middleware). It waiting a messages to Rails API who send to RabbitMQ server in a queue for janus server. Janus processes a message and send to RabbitMQ server in a queue for gem. Once the received message is decoded and returned through the Rails API.
Generic approval queues for record creation, updates and deletion
Useful extras for Queue Classic
Resque is a Redis-backed Ruby library for creating background jobs, placing those jobs on multiple queues, and processing them later. Resque-igo is the same thing, but for mongo. It would not exist without the work of defunkt and ctrochalakis on github. Background jobs can be any Ruby class or module that responds to perform. Your existing classes can easily be converted to background jobs or you can create new classes specifically to do work. Or, you can do both. Resque is heavily inspired by DelayedJob (which rocks) and is comprised of three parts: * A Ruby library for creating, querying, and processing jobs * A Rake task for starting a worker which processes jobs * A Sinatra app for monitoring queues, jobs, and workers.
Quebert is a worker queue framework built around beanstalkd. Use it in your Rails apps for job processing.
This plugin provides native Postfix instrumentation for monitoring and metrics collection of the mail queue via `mailq`
Instant queue. Background processing and message driven communication tool. Faster and simplier alternative to Resque.
Sidekiq::Undertaker is a plugin for Sidekiq. It allows exploring, reviving (retrying) or burying (deleting) dead jobs. For easy exploring the dead-jobs queue is broken down into time windows (buckets) of hours, days and weeks.
A Redis-backed FIFO queue
Process your Paperclip attachments in the background using Mongoid and Resque. Loosely based on delayed_paperclip and mongoid-paperclip.
A de-duplicating priority queue that uses mongodb as the storage engine.
Rails 4 compatible queue with support for executing jobs later.
Library for pushing messages onto and off RabbitMQ queues
Adaptation is a framework for building "adaptors" for web-applications, so they can interact with other web-applications publishing messages and being subscribed to a message queue.
RedisRPC is the easiest to use RPC library in the world. (No small claim!) It has implementations in Ruby, PHP, and Python. Redis is a powerful in-memory data structure server that is useful for building fast distributed systems. Redis implements message queue functionality with its use of list data structures and the `LPOP`, `BLPOP`, and `RPUSH` commands. RedisRPC implements a lightweight RPC mechanism using Redis message queues to temporarily hold RPC request and response messages. These messages are encoded as JSON strings for portability. Many other RPC mechanisms are either programming language specific (e.g. Java RMI) or require boiler-plate code for explicit typing (e.g. Thrift). RedisRPC was designed to be extremely easy to use by eliminating boiler-plate code while also being programming language neutral. High performance was not an initial goal of RedisRPC and other RPC libraries are likely to have better performance. Instead, RedisRPC has better programmer performance; it lets you get something working immediately.
This package provides reliable messaging and persistent queues for building asynchronous applications in Ruby. It supports transaction processing, message selectors, priorities, delivery semantics, remote queue managers, disk-based and MySQL message stores and more.
resque-status is an extension to the resque queue system that provides simple trackable jobs. It provides a Resque::Plugins::Status::Hash class which can set/get the statuses of jobs and a Resque::Plugins::Status class that when included provides easily trackable/killable jobs.
posix-mqueue is a simple wrapper around the mqueue(7).
Queueing proxy backed by EM/Beanstalk for a very weird purpose.