iamfarhad/laravel-rabbitmq
Production-ready RabbitMQ queue driver for Laravel with native Queue integration. Built on ext-amqp with connection/channel pooling, configurable topology, Horizon hooks, Octane-safe resets, and optional high-performance basic_consume workers plus admin Artisan commands.
This page defines the benchmark plan for measuring Laravel RabbitMQ worker behavior with native ext-amqp.
The goal is not to publish synthetic numbers without context. The goal is to make performance claims reproducible.
Measure each scenario with the same PHP, Laravel, RabbitMQ, CPU, memory, and container limits.
| Scenario | Metric |
|---|---|
| Publish normal jobs | jobs per second, CPU, memory |
| Consume normal jobs in poll mode | jobs per second, CPU, memory |
| Consume normal jobs in consume mode | jobs per second, CPU, memory |
| Publish with confirms | jobs per second, confirm latency |
| Delayed jobs | publish latency, delivery accuracy |
| Quorum queues | throughput and recovery behavior |
| Worker runtime for 1 hour | memory growth and reconnect behavior |
| Worker runtime for 6 hours | memory growth and stability |
iamfarhad/laravel-rabbitmq with native ext-amqp.Record this information for every benchmark run:
PHP version:
Laravel version:
RabbitMQ version:
ext-amqp version:
OS or Docker image:
CPU:
Memory:
Queue type:
Worker mode:
Prefetch count:
Publisher confirms:
Message payload size:
Job handler duration:
Create a dedicated benchmark app or command that can:
php artisan rabbitmq:bench:publish --queue=bench --jobs=10000 --payload-size=1024
php artisan rabbitmq:bench:consume --queue=bench --jobs=10000 --consume-mode=poll
php artisan rabbitmq:bench:consume --queue=bench --jobs=10000 --consume-mode=consume
Until first-class benchmark commands exist, use a demo application that dispatches a fixed number of jobs and measures end-to-end time.
Use a table like this once measurements are available:
| Driver | Mode | Queue | Jobs | Payload | Jobs/sec | Peak memory | CPU notes |
|---|---|---|---|---|---|---|---|
| iamfarhad/laravel-rabbitmq | consume | classic | 10,000 | 1 KB | TBD | TBD | TBD |
| iamfarhad/laravel-rabbitmq | poll | classic | 10,000 | 1 KB | TBD | TBD | TBD |
How can I help you explore Laravel packages today?