Skip to main content
# celery-redundant-scheduler

[Celery](http://celeryproject.org) beat scheduler providing ability to run multiple `celerybeat` instances.


# Problem
Production level deployment requires redundancy and fault-tolerance environment. Unfortunately [Celery](http://celeryproject.org) doesn't provide periodic tasks scheduling redundancy out of the box. Running multiple `celerybeat` instances results multiple scheduled tasks queuing. This package provides synchronized scheduler class. By default `redis` backend used, but developers are free too use their own based on package primitives.


# Installation
```#bash
pip install celery-redundant-scheduler
pip install git+https://github.com/MnogoByte/celery-redundant-scheduler.git
```


# Usage
1. Setup scheduler synchronization backend:
```
CELERYBEAT_REDUNDANT_BACKEND_OPTIONS = {
'HOST': 'localhost',
'PORT': 6379,
'DB': 0,
'PASSWORD': 'secret'
}
```
2. Provide `--scheduler=celery_redundant_scheduler:RedundantScheduler` option running your `worker` or `beat` instance.


# Settings
- `CELERYBEAT_REDUNDANT_BACKEND_OPTIONS` - redis connection options.
- `CELERYBEAT_REDUNDANT_REDIS_KEYPREFIX` - prefix for redis keys. Default is `redundant-scheduler`.
- `CELERYBEAT_REDUNDANT_REDIS_LOCK_EXPIRES` - redis lock timeout. Default is 60 seconds.


# Using custom scheduler synchronization backend
1. Define subclass of `celery_redundant_scheduler.backends.base:BaseBackend`.
2. Override back-end interaction methods.
3. Provide backend options with `CELERYBEAT_REDUNDANT_BACKEND_OPTIONS`
4. Claim using your subclass providing `CELERYBEAT_REDUNDANT_BACKEND` setting or environment variable.


# Author

[Antonov Mikhail](https://github.com/atin65536)

# License

BSD - 3

Metadata

Release files for celery-redundant-scheduler 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for celery-redundant-scheduler 0.0.1
File Size Uploaded Provenance Actions
celery-redundant-scheduler-0.0.1.tar.gz 4.2 kB Without provenance Details for celery-redundant-scheduler-0.0.1.tar.gz

Release files / celery-redundant-scheduler-0.0.1.tar.gz

Download URL celery-redundant-scheduler-0.0.1.tar.gz
Size 4.2 kB
Tags Source
SHA-256 checksum
How to use checksums
c1db78588279c1d12214155b824c22deeafb6ca26ab0743e5bd185158583a8ac
BLAKE2b-256 checksum
How to use checksums
57e75c3e89e09a44690707e232ca5ce2dde5b5ae64bc67f0a33c6fc3eb1b9c87
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for celery-redundant-scheduler 0.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.0.1 This release

1 release file No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page