Guide
The Queue plugin runs background jobs out of your CakePHP database — no Redis, no RabbitMQ, no extra infrastructure. Jobs are persisted, retried on failure, and processed by one or more worker processes you trigger via cron, supervisor, or systemd.
Where to start
- Basic Setup — install, load the plugin, run migrations.
- Queueing Jobs — create jobs from your app code, with priorities, references, and progress tracking.
- Custom Tasks — write your own task classes.
Operating the queue
- Configuration — runtime tuning (worker lifetime, timeouts, retries, multi-server).
- Cron Setup — start workers on a schedule.
- Multi-Connection — run queues against multiple databases.
- Real-Time Progress — Mercure / SSE for live progress UIs.
Email handling
- Mailing — queueing emails via QueueTransport, custom email tasks, and the built-in tasks reference.
For built-in tasks (Execute, Email, Mailer), see Tasks. For the admin UI, see Admin Dashboard.