【问题标题】:Topic Based Publishing with EasyNetQ使用 EasyNetQ 进行基于主题的发布
【发布时间】:2013-06-23 15:09:36
【问题描述】:

我正在尝试通过 easynetQ 使用基于主题的路由。 在我的设置中,我有 3 个队列(“A.B”、“A.C”、“B.C”)并交换“ex”。所有三个队列都使用路由键“A.B”、“A.C”、“B.C”连接到“ex”。

下面是我的代码。

       var bus = RabbitHutch.CreateBus(MQConnectionString).Advanced;
        var exchange = Exchange.DeclareTopic("ex");

        using (var publishChannel = bus.OpenPublishChannel())
        {
            Message pat = new Message();
            while (i++ < 10)
            {
                pat.Name = "Vamsee-" + i;
                pat.ID = Guid.NewGuid().ToString();
                if(i%3==0)
                publishChannel.Publish(exchange, "A.*", new Message<Message>(pat));
                else
                publishChannel.Publish(exchange, "A.C", new Message<Message>(pat));
            }
        }

当我的代码发布到 "A." 时,消息不会发送到所有(或)任何队列。我尝试过 ".*"、"#" 之一

请推荐

谢谢 瓦姆西

【问题讨论】:

    标签: rabbitmq publish easynetq


    【解决方案1】:

    你把这个弄错了。您需要使用完整的路由密钥发布每条消息。队列可以使用通配符或特定的绑定键绑定,以便它们接收正确的消息。如果您包含消费者的代码,则可能更容易更准确地诊断问题

    【讨论】:

      猜你喜欢
      • 2018-02-19
      • 1970-01-01
      • 2011-11-03
      • 2019-12-16
      • 1970-01-01
      • 2012-03-18
      • 2013-03-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多