The TaskIQ engine adapter for z4j.
Streams every TaskIQ task lifecycle event from your async workers to z4j and accepts operator control actions from the dashboard. Pair with z4j-taskiqscheduler to surface taskiq-scheduler periodic jobs.
- TaskIQ 0.11+ and <1 (capped below the eventual TaskIQ 1.0 breaking-major)
- Python 3.11+
Full per-adapter matrix at https://z4j.dev/reference/compatibility/.
| Capability | Notes |
|---|---|
| Task lifecycle events | enqueued, started, succeeded, failed |
| Task discovery | runtime broker task registry (broker.get_all_tasks()) |
| Submit task | enqueue a registered task against the TaskIQ broker via .kiq() |
| Reconcile task | via the configured TaskIQ result backend |
Async-native, uses TaskIQ's middleware hook system.
Control actions beyond submit (retry, cancel, bulk retry, purge queue) are not yet supported. TaskIQ's broker-agnostic design means each broker needs its own implementation, so the dashboard greys these actions out for TaskIQ engines until per-broker support lands.
pip install z4j-taskiq z4j-taskiqschedulerPair with a framework adapter:
pip install z4j-fastapi z4j-taskiq z4j-taskiqscheduler
pip install z4j-bare z4j-taskiq z4j-taskiqscheduler # framework-free workerz4j-taskiqscheduler, schedule adapter for taskiq-scheduler
- No exception from the adapter ever propagates back into TaskIQ middleware or your task code.
- Events buffer locally when z4j is unreachable; workers never block on network I/O.
Full docs at z4j.dev/engines/taskiq/.
Apache-2.0, see LICENSE.
- Homepage: https://z4j.com
- Documentation: https://z4j.dev
- PyPI: https://pypi.org/project/z4j-taskiq/
- Issues: https://github.com/z4jdev/z4j-taskiq/issues
- Changelog: CHANGELOG.md
- Security: security@z4j.com (see SECURITY.md)