Skip to main content

A rewrite of the original Celery AMQP result backend that supports Celery 5.0 and newer.

Project description

celery-amqp-backend

PyPI Test Status Codecov

celery-amqp-backend is a rewrite of the Celery's original amqp:// result backend, which was removed from Celery with version 5.0. Celery encourages you to use the newer rpc:// result backend, as it does not create a new result queue for each task and thus is faster in many circumstances. However, it's not always possible to switch to the new rpc:// result backend, as it does have restrictions as follows:

  • rpc:// does not support chords.
  • rpc:// results may hold a wrong state.
  • rpc:// may lose results when using gevent or greenlet.

The result backend celery_amqp_backend.AMQPBackend:// does not suffer from the same issues.

Installation

With a correctly configured pipenv toolchain:

pipenv install celery-amqp-backend

You may also use classic pip to install the package:

pip install celery-amqp-backend

Getting started

Configuration options

result_backend: str

Set to 'celery_amqp_backend.AMQPBackend://' to use this result backend.

result_persistent: bool

Default: False

If set to True, result queues will be persistent queues. This means that messages will not be lost after a message broker restart.

result_exchange: str

Default: 'celery_result'

The prefix for result queues created by the backend (e.g. if result_exchange is set to 'example', a result queue may be named 'example.36723ac0-aacf-4668-8927-08794d0b082e').

result_exchange_type: str

Default: 'direct'

The type of the exchange created by the backend (e.g. 'direct', 'topic' etc.).

Example configuration

result_backend = 'celery_amqp_backend.AMQPBackend://'
result_persistent = False
result_exchange = 'celery_result'
result_exchange_type = 'direct'

Supported versions

Celery 5.2 Celery 5.3
Python 3.8
Python 3.9
Python 3.10
Python 3.11
Python 3.12

List of developers

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

celery-amqp-backend-1.1.0.tar.gz (8.1 kB view hashes)

Uploaded Source

Built Distribution

celery_amqp_backend-1.1.0-py3-none-any.whl (8.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page