pogo / laravel-queue
Pogo Queue Driver for Laravel
0.0.10
2026-05-20 15:38 UTC
Requires
- php: ^8.5
- laravel/framework: ^13.0
- laravel/octane: ^2.0
README
Laravel queue driver for the FrankenPHP Queue v2 module.
The driver expects a FrankenPHP binary compiled with the pogo_queue module and
a production backend redis Caddy configuration. Jobs are delivered at least
once, so handlers must be idempotent.
Installation
composer require pogo/laravel-queue
Configuration
'pogo' => [ 'driver' => 'pogo', 'queue' => env('POGO_QUEUE', 'default'), 'retry_after' => 90, ],
QUEUE_CONNECTION=pogo POGO_QUEUE=default POGO_REDIS_URL=redis://redis:6379/0
Delayed dispatch is supported through Laravel's normal later() /
dispatch()->delay() APIs.
Worker
Run jobs through a FrankenPHP worker entrypoint and construct PogoJob from the
delivery envelope sent by the module:
$delivery = json_decode($message, true, flags: JSON_THROW_ON_ERROR); $job = PogoJob::fromDelivery($app, $app['queue']->connection('pogo'), $delivery); $app['queue.worker']->process('pogo', $job, new WorkerOptions());
PogoJob::delete(), release(), and fail() acknowledge, retry, or dead-letter
the Redis Streams delivery.