queue_classic is a queueing library for Ruby apps. (Rails, Sinatra, Etc...) queue_classic features asynchronous job polling, database maintained locks and no ridiculous dependencies. As a matter of fact, queue_classic only requires pg.
A simple event bus on top of common background queues. Publish and subscribe to events as they occur using what you already have.
This is a fibonacci-heap priority-queue implementation. That means insert: O(1) decrease_priority: Amortized O(1) delete_min: Amortized O(log n) This project is different from K. Kodamas PQueue in that it allows a decrease key operation. That makes PriorityQueue usable for algorithms like dijkstras shortest path algorithm, while PQueue is more suitable for Heapsort and the like.
Official AWS Ruby gem for Amazon Simple Queue Service (Amazon SQS). This gem is part of the AWS SDK for Ruby.
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.
minitest/rspec parallel test runner for CI environments
A Ruby wrapper for BSD's kqueue, using FFI
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.
== DESCRIPTION: The RightScale AWS gems have been designed to provide a robust, fast, and secure interface to Amazon EC2, EBS, S3, SQS, SDB, and CloudFront. These gems have been used in production by RightScale since late 2006 and are being maintained to track enhancements made by Amazon. The RightScale AWS gems comprise: - RightAws::Ec2 -- interface to Amazon EC2 (Elastic Compute Cloud) and the associated EBS (Elastic Block Store) - RightAws::S3 and RightAws::S3Interface -- interface to Amazon S3 (Simple Storage Service) - RightAws::Sqs and RightAws::SqsInterface -- interface to first-generation Amazon SQS (Simple Queue Service) (API version 2007-05-01) - RightAws::SqsGen2 and RightAws::SqsGen2Interface -- interface to second-generation Amazon SQS (Simple Queue Service) (API version 2008-01-01) - RightAws::SdbInterface and RightAws::ActiveSdb -- interface to Amazon SDB (SimpleDB) - RightAws::AcfInterface -- interface to Amazon CloudFront, a content distribution service == FEATURES: - Full programmmatic access to EC2, EBS, S3, SQS, SDB, and CloudFront. - Complete error handling: all operations check for errors and report complete error information by raising an AwsError. - Persistent HTTP connections with robust network-level retry layer using RightHttpConnection). This includes socket timeouts and retries. - Robust HTTP-level retry layer. Certain (user-adjustable) HTTP errors returned by Amazon's services are classified as temporary errors. These errors are automaticallly retried using exponentially increasing intervals. The number of retries is user-configurable. - Fast REXML-based parsing of responses (as fast as a pure Ruby solution allows). - Uses libxml (if available) for faster response parsing. - Support for large S3 list operations. Buckets and key subfolders containing many (> 1000) keys are listed in entirety. Operations based on list (like bucket clear) work on arbitrary numbers of keys. - Support for streaming GETs from S3, and streaming PUTs to S3 if the data source is a file. - Support for single-threaded usage, multithreaded usage, as well as usage with multiple AWS accounts. - Support for both first- and second-generation SQS (API versions 2007-05-01 and 2008-01-01). These versions of SQS are not compatible. - Support for signature versions 0 and 1 on SQS, SDB, and EC2. - Interoperability with any cloud running Eucalyptus (http://eucalyptus.cs.ucsb.edu) - Test suite (requires AWS account to do "live" testing).
Light weight job scheduling extension for Sidekiq that adds support for queueing jobs in a recurring way.
Heap, Priority Queue, Deque, Stack, Queue, Red-Black Trees, Splay Trees, sorting algorithms, and more
A job queue that uses PostgreSQL's advisory locks for speed and reliability.
A priority queue is like a standard queue, except that each inserted elements is given a certain priority, based on the result of the comparison block given at instantiation time. Retrieving an element from the queue will always return the one with the highest priority.
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.
Adds Redis::Queue class which can be used as Distributed-Queue based on Redis. Redis is often used as a messaging server to implement processing of background jobs or other kinds of messaging tasks. It implements Reliable-queue pattern decribed here: http://redis.io/commands/rpoplpush
Offload CarrierWave's image processing and storage to a background process using Delayed Job, Resque, Sidekiq, Qu, Queue Classic or Girl Friday
To parallelize your CI without having to balance your tests
Sidekiq strategy to restrict number of workers which are able to run specified queues simultaneously.
This gem is a Logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/logstash-plugin install gemname. This gem is not a stand-alone program
A Rails-based frontend to the Resque job queue system.
Library that implements weak, soft, and strong references in Ruby that work across multiple runtimes (MRI,Jruby and Rubinius). Also includes implementation of maps/hashes that use references and a reference queue.
Makes sure that for special jobs, there can be only one job with the same workload in one queue. Example: class CacheSweeper include Resque::Plugins::UniqueJob @queue = :cache_sweeps def self.perform(article_id) # Cache Me If You Can... end end
A simple LRU-cache based on a hash and priority queue
A tunable work queue, designed to coordinate work between a producer and a pool of worker threads.
Plugin for running methods on ActiveRecord models after record is committed
`qless` is meant to be a performant alternative to other queueing systems, with statistics collection, a browser interface, and strong guarantees about job losses. It's written as a collection of Lua scipts that are loaded into the Redis instance to be used, and then executed by the client library. As such, it's intended to be extremely easy to port to other languages, without sacrificing performance and not requiring a lot of logic replication between clients. Keep the Lua scripts updated, and your language-specific extension will also remain up to date.
Highly available distributed cron built on RDBMS
minitest/rspec parallel test runner for CI environments
Test::Unit support for resque job queueing
Fast priority queue implementation (c++ wrapper, see README.md for a comparison with other libraries)
A simple implementation of Windows Azure Storage API for Ruby, inspired by the S3 gems and self experience of dealing with queues. The major goal of the whole gem is to enable ruby developers [like me =)] to leverage Windows Azure Storage features and have another option for cloud storage.
Mocktacular Companion to AMQP Library. Happy TATFTing!
Background search indexing using existing worker systems.
Starling is a light-weight, persistent queue server that speaks the memcached protocol. It was originally developed for Twitter's backend.
A job queueing and background workers system using Beanstalkd. Inspired by the Minion gem.
Microsoft Azure Storage Queue Client Library for Ruby
A resque plugin for specifying the queues a worker pulls from with wildcards, negations, or dynamic look up from redis
Do things later with queue_classic
activejob-retry provides automatic retry functionality for failed ActiveJobs, with exponential backoff. Features: * Works with any queue adapter that supports retries. * Whitelist/blacklist exceptions to retry on. * Exponential backoff (varying the delay between retries). * Light and easy to override retry logic.
POSIX message queues allow local processes to exchange data in the form of messages. This API is distinct from that provided by System V message queues, but provides similar functionality.
Stomp messaging server with file/dbm/memory/activerecord based FIFO queues, queue monitoring, and basic authentication. == SYNOPSYS: Handles basic message queue processing
A web interface for the que queue
An admin interface for QueueClassic
A Sidekiq Web extension to enqueue/schedule jobs with custom perform params in Web UI. Support both Sidekiq::Worker and ActiveJob.
Mailhopper stores your application's emails in an ActiveRecord queue for asynchronous delivery. Use Mailhopper in combination with a delivery agent such as DelayedMailhopper.
A Rails engine that provides a simple web interface for exposing the Delayed::Job queue.
This gem defines the Kernel method "it" that queue and defer method calls. This extends the Symbol#to_proc idiom to support chaining multiple methods. For example, items.collect(&it.to_s.capitalize). This also allows conditionals in case statements, such as: case ... when it > 3 then [etc.]. The method is also aliased as "its", for methods that describe possessives rather than actions, such as items.collect(&its.name.capitalize) [This gem is an extension of Jay Philips' "methodphitamine" gem, updated for ruby 1.9 and gemspec compatibility and adding the case statement functionality.]
Ruby wrapper for SysV Message Queues
Ost lets you manage queues and workers with Redis.
A simple Resque plugin that times and saves some simple metrics for Resque jobs back into redis. Based on this system you could build some simple auto-scaling mechanism based on the speed and ETA of queues. Also includes a hook/callback mechanism for recording/sending the metrics to your favorite tool (AKA statsd/graphite).