Queue Classic este un framework de procesare în fundal pentru aplicațiile Ruby care gestionează sarcinile asincrone prin utilizarea tabelelor de baze de date relaționale pentru persistența job-urilor. Prin stocarea sarcinilor direct în baza de date, sistemul asigură că crearea job-ului rămâne cuplată cu tranzacțiile aplicației, garantând că sarcinile sunt puse în coadă doar atunci când modificările de date asociate sunt confirmate cu succes.
The main features of queueclassic/queue_classic are: Ruby Frameworks, PostgreSQL Task Queues, Asynchronous Task Processing, Transactional Enqueueing, Database-Backed Persistence, Advisory Locking Mechanisms, Delayed Task Scheduling, Background Job Processing.
Open-source alternatives to queueclassic/queue_classic include: riverqueue/river — River is a transactional job queue and distributed job scheduler for Go that uses PostgreSQL for persistence and state… hangfireio/hangfire — Hangfire is a background job scheduler and distributed task queue for .NET applications. It serves as a job… resque/resque — Resque is a Ruby library for enqueueing and processing asynchronous tasks using Redis as a data store. It functions as… rails/solid_queue — Solid Queue is a background job processing system for Ruby on Rails applications that utilizes a relational database… richardknop/machinery — Machinery is a distributed task queue and asynchronous workflow engine. It provides a system for processing heavy… oban-bg/oban — Oban is a distributed background job processing system and task scheduler that uses PostgreSQL for transactional job…
River is a transactional job queue and distributed job scheduler for Go that uses PostgreSQL for persistence and state management. It functions as a resumable task framework, allowing long-running background work to be broken into persisted steps that can resume from the last saved checkpoint after a failure. The system ensures strict data consistency by allowing background tasks to be enqueued and completed within the same database transaction as the primary application data. It distinguishes itself through a coordinator model that employs leader election to manage periodic and delayed tasks
Hangfire is a background job scheduler and distributed task queue for .NET applications. It serves as a job orchestration framework that offloads heavy processing to background workers using a SQL-backed processor to manage job state across multiple servers. The framework distinguishes itself through reliable task scheduling, where job metadata and arguments are persisted in an external database to ensure tasks survive application restarts. It supports advanced orchestration patterns, including the ability to chain dependent tasks so that a child job triggers automatically upon the successful
Resque is a Ruby library for enqueueing and processing asynchronous tasks using Redis as a data store. It functions as a distributed task processor and queue manager, allowing long-running work to be moved out of the main request cycle. The system executes background jobs in isolated child processes to prevent memory leaks and provides a web-based dashboard for monitoring queue depths, worker activity, and failed job statistics. Capability areas include distributed worker coordination via signals, error handling with job retry mechanisms, and priority-ordered queue management. It also suppor
Solid Queue is a background job processing system for Ruby on Rails applications that utilizes a relational database as its primary storage backend. By integrating directly with the framework's native job interface, it ensures that task queues and execution states are persisted within the database, providing reliability and recoverability across system failures. The system distinguishes itself by embedding worker processes directly into the web server environment, which simplifies deployment and consolidates monitoring within existing infrastructure. It coordinates distributed worker processe