我正在使用 MassTransit 事务发件箱模式。今天,我们遇到了一些问题,我发现有些消息没有传递给消费者。
问题是我们有 3 个应用程序,并且都使用相同的数据库并调用
UseBusOutbox
方法,该方法将添加 BusOutboxDeliveryService
托管服务。我有一些感觉,因为这些应用程序使用相同的发件箱表,这就是为什么消息被推送(保存在数据库中)但没有传递给消费者?
如何避免这种情况?
在我们的例子中,有本地经纪人和远程经纪人。有人连接到远程数据库和本地代理,它们使用来自远程数据库的消息但发送到本地代理。