地铁:没有消费者 |
您所在的位置:网站首页 › 地铁esb › 地铁:没有消费者 |
有一个关于地铁ESB的新手问题 我第一次尝试MassTransit,并试图了解如何创建队列和如何使用消息。 我有一个web应用程序和一个控制台应用程序试图分别进行发布/消费。 这是我的初始化代码。 代码语言:javascript复制var bus = Bus.Factory.CreateUsingRabbitMq(sbc => { var host = sbc.Host(new Uri(hostName), h => { h.Username(userName); h.Password(password); }); });然后从web应用程序调用以下代码。 代码语言:javascript复制 using (Bus.Start()) { var pubr = Bus.Publish(message); pubr.Wait(); }这将导致兔子MQ中的消息丢失。 如果我在控制台应用程序中添加了一个使用者,我就可以让这个示例工作。 代码语言:javascript复制 sbc.ReceiveEndpoint(host, e => e.Consumer(d => { }) { }我的问题是,如果没有消费者,为什么我的信息会丢失呢? 看起来,兔子MQ认为没有连接到交换的队列,因此消息丢失了。是这样吗?是否有一种方法可以在初始化过程中创建队列并在一起进行交换,而不使用大量随机命名的队列/交换来扰乱兔子MQ? 在我对MassTransit /兔子MQ的理解中,我似乎缺少了一些非常基本的东西。我认为这是一种非常常见的情况,即消费者注册发生在发布事件之后,并且一旦连接,消费者将被发送所有已发布的项目。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |