Oban is a distributed, database-backed task processor for Elixir applications. It functions as a reliable job queue that leverages relational databases as the primary source of truth for scheduling, persistence, and state management. By utilizing the database for coordination, it ensures that background tasks remain durable across system restarts and consistent across distributed clusters. The system distinguishes itself through its use of database-level primitives to manage cluster-wide operations. It employs listen-notify messaging to trigger immediate worker wake-ups, bypassing the need fo
Inngest is a durable execution framework and event-driven automation engine designed to orchestrate background workflows. It enables developers to build resilient, stateful processes by memoizing function steps, ensuring that long-running tasks can automatically resume from the last successful operation after failures, timeouts, or infrastructure restarts. The platform distinguishes itself through its event-driven architecture, which uses a schema-validated bus to trigger functions and coordinate complex, multi-step logic. It employs an onion-model middleware approach for cross-cutting concer
Sidekiq is a background job processor and queue manager for Ruby that uses Redis to manage asynchronous tasks. It functions as a distributed task scheduler capable of handling periodic, delayed, and recurring jobs across a cluster of worker processes. The project features a job monitoring dashboard and administrative web interface for visualizing system state, tracking worker performance, and managing failed or dead jobs. It provides a distributed rate limiter to control execution frequency across multiple processes. The framework covers a broad range of operational capabilities, including j
Queue Classic is a background processing framework for Ruby applications that manages asynchronous tasks by utilizing relational database tables for job persistence. By storing tasks directly within the database, the system ensures that job creation remains coupled with application transactions, guaranteeing that tasks are only queued when associated data changes are successfully committed. The framework coordinates concurrent worker processes through database-level locking mechanisms, which prevent redundant execution and allow for distributed task processing without the need for an external
River هو طابور مهام معاملات وجدول مهام موزع لـ Go يستخدم PostgreSQL للاستمرارية وإدارة الحالة. يعمل كإطار عمل للمهام القابلة للاستئناف، مما يسمح بتقسيم العمل الخلفي طويل الأمد إلى خطوات مستمرة يمكن استئنافها من آخر نقطة حفظ بعد الفشل.
The main features of riverqueue/river are: Persistent Job Queue Libraries, Transactional Enqueueing, Database-Backed Deferred Queues, Transactional Updates, Database Backend Integration, Job State Persistence, PostgreSQL Task Queues, Asynchronous Task Processing.
Open-source alternatives to riverqueue/river include: sorentwo/oban — Oban is a distributed, database-backed task processor for Elixir applications. It functions as a reliable job queue… inngest/inngest — Inngest is a durable execution framework and event-driven automation engine designed to orchestrate background… sidekiq/sidekiq — Sidekiq is a background job processor and queue manager for Ruby that uses Redis to manage asynchronous tasks. It… queueclassic/queue_classic — Queue Classic is a background processing framework for Ruby applications that manages asynchronous tasks by utilizing… mesos/chronos — Chronos is a distributed, fault-tolerant job scheduler designed for managing containerized workloads within a cluster.… timgit/pg-boss — pg-boss is a background task scheduler and distributed task queue that uses PostgreSQL as a reliable message broker…