# BullMQ v2.0.3 - Table of Contents

> A powerful, fast, and robust job queue for Elixir backed by Redis

## Pages

- [Overview](readme.md)
- [Changelog](changelog.md)

- Guides
  - [Introduction](introduction.md)
  - [Getting Started](getting_started.md)
  - [Job Options](job_options.md)
  - [Workers](workers.md)
  - [Manual Job Processing](manual_processing.md)
  - [Job Cancellation](job_cancellation.md)
  - [Deduplication](deduplication.md)
  - [Queue Events](queue_events.md)
  - [Job Schedulers](job_schedulers.md)
  - [Rate Limiting](rate_limiting.md)
  - [Flows &amp; Parent-Child Jobs](flows.md)
  - [Telemetry](telemetry.md)
  - [Scaling](scaling.md)
  - [Benchmarks](benchmarks.md)

## Modules

- [BullMQ.Backend](BullMQ.Backend.md): Database-agnostic contract describing every high-level operation that the
`BullMQ.Queue`, `BullMQ.Worker`, `BullMQ.Job`, `BullMQ.QueueEvents`,
`BullMQ.FlowProducer` and `BullMQ.JobScheduler` modules need in order to
function.
- [BullMQ.Backends.Postgres](BullMQ.Backends.Postgres.md): PostgreSQL implementation of the `BullMQ.Backend` behaviour — the Elixir port
of the Node.js `PostgresQueueBackend`.
- [BullMQ.Backends.Postgres.Connection](BullMQ.Backends.Postgres.Connection.md): Owns the PostgreSQL connection resources for the BullMQ Postgres backend,
mirroring `BullMQ.RedisConnection`
- [BullMQ.Backends.Postgres.Migrator](BullMQ.Backends.Postgres.Migrator.md): Runs the PostgreSQL backend's schema migrations, mirroring the Node.js
`migrator.ts`.
- [BullMQ.Backends.Postgres.SqlLoader](BullMQ.Backends.Postgres.SqlLoader.md): Loads the PostgreSQL backend's SQL from `.sql` files — the portable source of
truth shared with the Node.js/Python/other ports.
- [BullMQ.Backends.Redis](BullMQ.Backends.Redis.md): Redis implementation of the `BullMQ.Backend` behaviour.
- [BullMQ.CancellationToken](BullMQ.CancellationToken.md): Provides cooperative job cancellation for BullMQ workers.
- [BullMQ.LockManager](BullMQ.LockManager.md): Manages lock renewal for BullMQ workers.
- [BullMQ.QueueEvents.Handler](BullMQ.QueueEvents.Handler.md): Behaviour for queue event handlers.
- [BullMQ.Telemetry.Behaviour](BullMQ.Telemetry.Behaviour.md): Behaviour for telemetry integrations in BullMQ.
- [BullMQ.Telemetry.OpenTelemetry](BullMQ.Telemetry.OpenTelemetry.md): OpenTelemetry adapter for BullMQ distributed tracing.
- [BullMQ.Version](BullMQ.Version.md): BullMQ version information.

- Core
  - [BullMQ](BullMQ.md): BullMQ - A powerful, fast, and robust job queue for Elixir backed by Redis.
  - [BullMQ.Job](BullMQ.Job.md): Represents a job in a BullMQ queue.
  - [BullMQ.Queue](BullMQ.Queue.md): Queue management for BullMQ.
  - [BullMQ.Worker](BullMQ.Worker.md): Worker process for processing BullMQ jobs.

- Configuration
  - [BullMQ.Types](BullMQ.Types.md): Type definitions for BullMQ.

- Events
  - [BullMQ.QueueEvents](BullMQ.QueueEvents.md): Subscribe to queue events in real-time.
  - [BullMQ.Telemetry](BullMQ.Telemetry.md): Telemetry integration for BullMQ.

- Scheduling
  - [BullMQ.Backoff](BullMQ.Backoff.md): Backoff strategies for job retries.
  - [BullMQ.JobScheduler](BullMQ.JobScheduler.md): Job scheduler for creating recurring jobs.

- Advanced
  - [BullMQ.FlowProducer](BullMQ.FlowProducer.md): Create job flows with parent-child dependencies.
  - [BullMQ.StalledChecker](BullMQ.StalledChecker.md): Detects and handles stalled jobs.

- Internal
  - [BullMQ.Keys](BullMQ.Keys.md): Redis key generation for BullMQ queues.
  - [BullMQ.RedisConnection](BullMQ.RedisConnection.md): Redis connection management for BullMQ.
  - [BullMQ.Scripts](BullMQ.Scripts.md): Manages Lua scripts for BullMQ Redis operations.

