Overview

๐ŸŒŸ Oban.Pro is a collection of extensions, workers, and plugins that expand what Oban is capable of while making complex workflows possible.

Explore what's available below, get started with installation, or learn how to transition from OSS to Pro with adoption.

extensions

Extensions

smart-engine

๐Ÿš„ Smart Engine

An extension that enables truly global concurrency, global rate limiting, partitioned rate limiting, unique bulk inserts, and auto insert batching.

pro-worker

๐Ÿ‘ท Pro Worker

Extend the base worker with advanced options like encryption, enforced structure, and recorded output.

relay

๐Ÿ“ก Relay

Insert jobs and await the results across any number of nodes, i.e. persistent distributed tasks.

testing

๐Ÿงช Testing

Advanced helpers for testing supervised Oban instances, workers, and making assertions about enqueued jobs.

plugins

Plugins

dynamiccron

โฐ DynamicCron

Configure cron scheduling at runtime, globally, across an entire cluster.

dynamiclifeline

๐Ÿ›Ÿ DynamicLifeline

Rescue orphaned jobs reliably, without the possibility of duplicate execution.

dynamicpruner

โœ‚๏ธ DynamicPruner

Delete historic jobs on a flexible CRON schedule using configurable limits with per-queue, per-worker, and per-state overrides.

dynamicqueues

๐ŸŽข DynamicQueues

Configure queues at runtime, persist changes across restarts, and optionally limit queues to certain nodes.

reprioritizer

๐Ÿ“‰ Reprioritizer

Automatically adjust job priorities to prevent queue starvation and ensure all jobs are eventually processed.

workers

Workers

batch

๐Ÿ—„๏ธ Batch

Process jobs in groups while tracking overall progress across all nodes and executing optional callbacks.

chunk

๐Ÿช Chunk

Process jobs atomically in groups based on size or timeout, with robust error handling semantics.

workflow

๐Ÿ–‡๏ธ Workflow

Compose workers together with arbitrary dependencies between jobs, allowing sequential, fan-out and fan-in execution.