symfony/amqp-messenger
Symfony AMQP Messenger integration: send and consume Symfony Messenger messages via AMQP brokers like RabbitMQ. Provides transport configuration, routing, and worker support, maintained in the main Symfony repository.
symfony/messenger or a Laravel wrapper like laravel-messenger).spatie/laravel-messenger) to integrate Symfony Messenger with Laravel’s queue system.Message interface.Message interface and configuration.Dsn configuration.spatie/laravel-messenger), but duplication of infrastructure may arise.Message interface or a compatible wrapper.Message objects vs. serialized payloads).spatie/laravel-messenger) to integrate Symfony Messenger with Laravel’s queue system.symfony/messenger and symfony/amqp-messenger.config/packages/messenger.yaml:
framework:
messenger:
transports:
amqp:
dsn: '%env(MESSENGER_TRANSPORT_DSN)%'
options:
exchange:
name: 'app_messages'
type: 'direct'
queues:
app_messages:
binding:
routing_key: 'app_messages'
Message classes (or use a wrapper like spatie/laravel-messenger).// Before (Laravel Queue Job)
class SendNotificationJob implements ShouldQueue {
use Dispatchable, InteractsWithQueue;
public $data;
}
// After (Symfony Message)
class SendNotificationMessage {
public function __construct(public array $data) {}
}
DelayStamp for delayed messages:
$message = new SendNotificationMessage($data);
$bus->dispatch($message, [new DelayStamp(3600)]);
php bin/console messenger:consume).queue:work can still be used if running in hybrid mode (via a bridge).failed_jobs table.DelayStamp.How can I help you explore Laravel packages today?