我正在尝试使用RabbitMQ作为Rebus 5的传输来设置单个发布者和多个订户方案。RabbitMQ是3.7.9。
虽然该示例使用MSMQ可以完美运行,但对于RabbitMQ,我收到警告,指出该消息无法分派给第一个订阅者的任何处理程序(在消耗掉第一条消息之后)。
顺序如下。
发布者和订阅者是Pub / Subsamples中代码的副本。据我所知,这与使用RabbitMQ进行传输有某种联系,也许某些配置没有完成。
====更新=====
我发现我正在预订单个队列(对于两个订户),这是导致消息在两个订户之间交替传递的原因。请参阅该SO问题中的说明。 Rebus: 2 handlers in 2 processes. Hit inconsistently and alternately。
因此,现在,我为每个订阅者排队,并且两个订阅者都收到相同的消息,但是每次警告仍在发布者上发出。
情况有所改善,现在我也发出了警告。我必须专门定义一个消息类-最初我使用的是字符串消息,并将其提供给处理程序以及发布和订阅。
现在,两个订户都收到了相同的消息!