{{ tab.label }}
{{ tab.description }}
{{ tab.code }}
It's easy to work with RabbitMQ message queues
Clean, intuitive API for publishing and consuming messages with full AMQP property support β priority, TTL, correlation IDs, and custom headers out of the box.
Set QUEUE_CONNECTION=amqp and use
dispatch() / queue:work as
usual β RabbitMQ handles persistence, delays, and
failures behind the scenes.
Long-running workers and CLI tooling via
amqp:work, amqp:consume,
amqp:listen, amqp:publish,
and amqp:purge.
Built-in request/response with rpc() and
reply(), including automatic correlation
ID handling and reply-queue management.
Declarative RetryPolicy +
DeadLetterTopology +
RetryHandler with fixed/exponential
backoff, automatic DLQ routing, and one-flag CLI
integration (--retry --declare-topology).
Schedule deliveries with publishLater() or
amqp:publish --delay-ms. Works on stock
RabbitMQ (TTL+DLX) or the delayed-message exchange
plugin. Includes PublishBackoff for
transient publisher errors.
Plain-PHP DTOs via TypedMessage, published
with publishTyped() / consumed with
consumeTyped(). Optional zero-dependency
JSON-Schema-lite validation on both directions.
ExchangeTopology builders,
QueueProfile quorum/priority presets,
resilient reconnect + ConnectionPool,
W3C trace propagation, correlation IDs, and
ConsumerLifecycle hooks.
Saga step/compensation workflows, Laravel
publish/consume events, consume middleware pipeline,
AsyncPublisher with confirms, and
Amqp::fake() with Laravel-style assertions.
Typed service-oriented RPC over RabbitMQ. Define
RpcService + RpcRequest /
RpcResponse DTOs and call any service
with Rpc::call(UserService::class, GetUserRequest::make([...])).
Symmetric Rpc::serve() on the server.
Service discovery Rpc::service('payments'),
Saga::make()->step()->compensate(),
OrderCreated::dispatch([...]),
Amqp::deadLetters() management,
#[Retry] attribute, monitoring dashboard,
causation IDs, MessageStore, and an async-Laravel-events
bridge.
Browse common tasks β pick one from the list to see the snippet.
{{ tab.description }}
{{ tab.code }}
Thanks to all the amazing people who have contributed to this project!