z4j Celery queue engine adapter (Apache 2.0)
Project description
z4j-celery
License: Apache 2.0 Status: v1.0.0 - first public release. The flagship queue-engine adapter.
The Celery queue-engine adapter for z4j. Captures every task lifecycle event via Celery's signal system, executes control actions (retry, cancel, bulk retry, purge, pool restart) against your live Celery app, and discovers tasks via a five-layer pipeline that handles signal registration, broker events, and static AST scans.
Install
pip install z4j-celery z4j-celerybeat
Pair with a framework adapter:
pip install z4j-django z4j-celery z4j-celerybeat # Django
pip install z4j-flask z4j-celery z4j-celerybeat # Flask
pip install z4j-fastapi z4j-celery z4j-celerybeat # FastAPI
pip install z4j-bare z4j-celery z4j-celerybeat # Bare worker
What it ships on day 1
| Capability | Status | Notes |
|---|---|---|
| Event capture | ✅ | Dual-capture: Celery signals (task_received, task_succeeded, task_failed, task_retried, task_revoked) + broker events for multi-worker deployments |
| Discovery | ✅ | Five-layer pipeline: runtime celery_app.tasks, static tasks.py AST scan, signal registration, merged task registry |
submit_task / retry_task / cancel_task |
✅ | Direct against the Celery app |
bulk_retry |
✅ | Filter-driven; re-enqueues matching tasks |
purge_queue |
✅ | With confirm-token + Z4J_PURGE_THRESHOLD guard |
requeue_dead_letter |
✅ | From the configured DLX |
restart_worker |
✅ | Broadcast pool_restart - zero task loss, child processes drain in-flight tasks before respawn |
pool_grow / pool_shrink |
✅ | Via Celery's control API |
rate_limit |
✅ | Broker-side via Celery's control channel - the only engine where this works correctly |
reconcile_task |
✅ | Via AsyncResult against the result backend |
This is the widest feature coverage of any adapter. Celery's rich remote- control surface lets z4j offer capabilities no other engine can match (pool restart with zero task loss, broker-side rate limiting).
Reliability
- No exception from the adapter propagates to Celery signal handlers.
- Events buffer to an in-memory ring; a background thread flushes to the brain. Signal handlers never do network I/O.
- When the brain is unreachable, events buffer locally (via
z4j-bare's SQLite buffer). Your Celery workers never slow down or block.
Scheduler pairing
Use z4j-celerybeat for
Celery Beat / django-celery-beat schedules on the Schedules page.
Documentation
License
Apache 2.0 - see LICENSE. Your application is never
AGPL-tainted by importing z4j_celery.
Links
- Homepage: https://z4j.com
- Documentation: https://z4j.dev
- Issues: https://github.com/z4jdev/z4j-celery/issues
- Changelog: CHANGELOG.md
- Security:
security@z4j.com(see SECURITY.md)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file z4j_celery-1.0.2.tar.gz.
File metadata
- Download URL: z4j_celery-1.0.2.tar.gz
- Upload date:
- Size: 58.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b26b75e9fc59fd30c56b278f421ffbe0a0fd07ef06a28dee219893244a62dab2
|
|
| MD5 |
607916b79c17981298b21fabfc0c0e04
|
|
| BLAKE2b-256 |
bb88c2bac6d6a3ce435a197e65d9b34aaa83bc9b6b629123e7a424f884446519
|
File details
Details for the file z4j_celery-1.0.2-py3-none-any.whl.
File metadata
- Download URL: z4j_celery-1.0.2-py3-none-any.whl
- Upload date:
- Size: 56.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1278f40f4efa0e6c72348f34d4b1543969988ac36b90c1b56eb198f02731a128
|
|
| MD5 |
c65325b45d4f734649f04d2d90fae101
|
|
| BLAKE2b-256 |
31ac2107b3eec9f10239b39c28403280a5046f8081c0062c4840dd2d9bd77452
|