小编Flo*_*scu的帖子

尽管在 Symfony Messenger 中将处理程序路由配置为异步,但消息未异步分派

我正在使用 Symfony 4.4 和 Symfony Messenger

Messenger 配置包括传输和路由:

messenger:
    failure_transport: failed

    transports:
        async_medium:
            dsn: '%env(MESSENGER_TRANSPORT_DSN)%'
            retry_strategy:
                max_retries: 3
                delay: 1000
        failed:
            ...

    routing:
        'Name\Space\MessageHandler\SnowplowNotificationHandler': async_medium
Run Code Online (Sandbox Code Playgroud)

尽管处理程序看起来配置正确(当我运行控制台 debug:messenger 时,它显示正确分配给传输)

Messenger

messenger.bus.default

 The following messages can be dispatched:
  Name\Space\Message\SnowplowMessage                                                  
     handled by Name\Space\MessageHandler\SnowplowEmailNotificationHandler  
Run Code Online (Sandbox Code Playgroud)

消息类SnowplowMessage不会排队,而是立即发送到_invoke()处理程序的方法。

我正在使用 AMQP(RabbitMQ 作为传输)并且它配置正确,因为没有显示错误并且命令控制台信使:setup-transport 正确创建队列

php symfony symfony-messenger

3
推荐指数
1
解决办法
1672
查看次数

标签 统计

php ×1

symfony ×1

symfony-messenger ×1