Messenger
通过 Symfony 组件分派事件和通过 Symfony组件分派事件之间的基本区别是什么EventDispatcher
?
问问题
602 次
2 回答
3
正如您已经用 RabbitMQ 标记了这个问题:您是否尝试过使用 EventDispatcher 和 RabbitMQ?我不认为这是可能的。
但是要引用位于https://symfony.com/doc/current/components/messenger.html的官方文档:
Messenger 组件帮助应用程序向/从其他应用程序或通过消息队列发送和接收消息。
在另一个请求中处理消息的纯粹能力(通过使用传输)对 EventDispatcher 产生了巨大的影响,EventDispatcher 在应用程序的同一实例中处理所有给定事件。重新启动应用程序(通过新的 shell 调用或新的 Web 服务器请求)肯定会杀死所有尚未通过 EventDispatcher 处理的事件,但使用传输存储的事件可能仍然存在
于 2019-11-07T17:20:16.403 回答
3
Symfony Messenger
是帮助您构建公交信使系统的工具。通常,如果您的应用程序需要与外部服务通信(例如,使用 AMQP 协议),您会使用它。
该EventDispatcher
系统使您的组件能够在它们之间进行通信。如果您想让应用程序的内部部分进行通信,您将使用此系统。
于 2019-11-07T17:21:46.147 回答