gpt4 book ai didi

symfony - 对 Symfony Messenger 使用默认传输(跳过 amqp)

转载 作者:行者123 更新时间:2023-12-03 08:55:19 24 4
gpt4 key购买 nike

在messenger.yaml中,我将消息相应地路由到amqp

routing:
# Route your messages to the transports
'App\Message\SendNewsletterMessage': amqp

但在某些环境中,我没有安装 RabbitMQ,我想直接发送消息。我不想简单地注释掉该行,因为代码部署在多个地方。相反,我想将传输设置为内部调用(就好像它被注释掉一样),但我无法弄清楚默认传输的名称是什么。

routing:
# Route your messages to the transports
'App\Message\SendNewsletterMessage': '%env(MESSAGE_TRANSPORT)%' # amqp or...

然后我的环境变量可以是“amqp”或直接。使用什么传输方式进行直接调用?

最佳答案

Symfony 4.3 处理这个问题,“直接”传输称为同步:

# config/packages/messenger.yaml
framework:
messenger:
transports:
async: '%env(MESSENGER_TRANSPORT_DSN)%'
routing:
'App\Message\SmsNotification': async
'App\Message\OtherMessage': async


# .env
# by default, handle this sync
MESSENGER_TRANSPORT_DSN=sync://

https://github.com/symfony/symfony/pull/30759

关于symfony - 对 Symfony Messenger 使用默认传输(跳过 amqp),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55920631/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com