同一事件的RabbitMQ多个侦听器

时间:2020-02-17 09:28:51

标签: rabbitmq asp.net-core-2.2

我有一个名为CompanyUpdated的事件,每次更新公司资料时都会引发该事件。 我需要两个听众来收听此事件。一个用于搜索服务以更新其数据以用于Azure搜索,另一个用于更新目录管理中的公司详细信息。

我可以创建两个侦听器来监听此事件吗?

还可以在两个不同的微服务中使用相同的名称来命名两个侦听器吗?

1 个答案:

答案 0 :(得分:0)

Rabbit MQ支持pub-sub。您应该创建两个队列,并使用将消息路由到两个队列的交换(例如,扇出交换)。然后,Azure搜索的侦听器应侦听一个队列,而目录管理侦听器应侦听另一队列。

这将确保两个侦听器都可以接收事件。

由于我没有使用.Net平台的经验,所以我对asp.net的评论不多。 但是,您可以阅读Pub-Sub implementation tutorial for C#了解更多详细信息。