framework: messenger: # Uncomment this (and the failed transport below) to send failed messages to this transport for later handling. failure_transport: failed # Three buses: Command, Query, Event (CQRS + Event-driven) default_bus: command.bus buses: command.bus: default_middleware: true middleware: - App\Shared\Infrastructure\Messenger\AddCorrelationIdStampMiddleware - App\Shared\Infrastructure\Messenger\CorrelationIdMiddleware - doctrine_transaction query.bus: default_middleware: true middleware: - App\Shared\Infrastructure\Messenger\AddCorrelationIdStampMiddleware - App\Shared\Infrastructure\Messenger\CorrelationIdMiddleware event.bus: default_middleware: allow_no_handlers: true middleware: - App\Shared\Infrastructure\Messenger\AddCorrelationIdStampMiddleware - App\Shared\Infrastructure\Messenger\CorrelationIdMiddleware transports: # https://symfony.com/doc/current/messenger.html#transport-configuration async: dsn: '%env(MESSENGER_TRANSPORT_DSN)%' options: exchange: name: classeo_messages type: topic queues: messages: binding_keys: ['#'] retry_strategy: max_retries: 3 delay: 1000 multiplier: 2 max_delay: 60000 failed: dsn: 'doctrine://default?queue_name=failed' routing: # Route your messages to the transports # 'App\Message\YourMessage': async