z4j-celery
The Celery engine adapter for z4j.
Streams supported task lifecycle events from your Celery workers to the z4j brain and accepts operator control actions from the dashboard. Pair with z4j-celerybeat to manage periodic / cron schedules.
Compatibility
- Celery 5.2.2+ (no upper cap)
- Python 3.11+
Full per-adapter matrix at https://docs.z4j.com/reference/compatibility/.
What it ships
| Capability | Notes |
|---|---|
| Task lifecycle events | submitted, started, succeeded, failed, retried, revoked |
| Task discovery | runtime registry merge + static tasks.py scan |
| Submit / retry / cancel | direct against the Celery app |
| Bulk retry | retries brain-selected explicit task IDs individually; does not sweep the broker |
| Purge queue | with confirm-token guard |
| Requeue dead-letter | unsupported: broker-specific atomic consume/ack and routing are required |
| Restart worker | fire-and-forget pool_restart; requires Celery's worker_pool_restarts setting and operator verification |
| Pool grow / shrink | via Celery's control API |
| Rate limit | fire-and-forget Celery remote-control broadcast to the selected worker(s) |
| Reconcile task | via the result backend |
The widest feature coverage of any z4j engine adapter, Celery's remote-control
surface provides controls other engines cannot expose. Worker-control
broadcasts do not acknowledge execution: verify the worker state afterward.
pool_restart is intended for prefork deployments; Celery's gevent and
eventlet pools do not support it reliably.
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 # framework-free worker
Pairs with
z4j-celerybeat, schedule adapter for Celery Beat / django-celery-beat
Reliability
- Lifecycle-capture failures are isolated from Celery workers and signal handlers; capture hooks make no brain network request inline.
- The in-process event queue and SQLite outbound buffer are bounded. Queue overflow drops new events and buffer pressure evicts oldest rows; both losses are logged.
Documentation
Full docs at docs.z4j.com/engines/celery/.
License
Apache-2.0, see LICENSE.
Links
- Homepage: https://z4j.com
- Documentation: https://docs.z4j.com
- PyPI: https://pypi.org/project/z4j-celery/
- Issues: https://github.com/z4jdev/z4j-celery/issues
- Changelog: CHANGELOG.md
- Security: security@z4j.com (see SECURITY.md)
Metadata
Release files for z4j-celery 1.12.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| z4j_celery-1.12.0.tar.gz | 80.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| z4j_celery-1.12.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 151.5 kB
Release files / z4j_celery-1.12.0.tar.gz
| Download URL | z4j_celery-1.12.0.tar.gz |
|---|---|
| Size | 80.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1e3d2423eef6cb4628a3b58abf1be4b766af7facf32187bf720326614ab30e3e
|
|
BLAKE2b-256 checksum How to use checksums |
a5f61156788268b21568e5feccc37bcb57937a4cba1ba24b0e702fdc515fcd94
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / z4j_celery-1.12.0-py3-none-any.whl
| Download URL | z4j_celery-1.12.0-py3-none-any.whl |
|---|---|
| Size | 71.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0fd4002dd2e1ce4c817827ef76d8f75b95a5cceaeb749b92b8e965ed90f70033
|
|
BLAKE2b-256 checksum How to use checksums |
d3177d50d51e91c28c1771eda3a4f0c7b6d859198a8546cc90a63c03fec60011
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|