• 7,EasyNetQ-控制队列名称


    EasyNetQ在为队列生成名称时的默认行为是使用   消息类型名称+subscription Id

    例如,名称空间EasyNetQ.Tests.Integration中的PartyInvitation消息类型将使用队列名称EasyNetQ.Tests.Integration.PartyInvitation:EasyNetQ.Tests_schedulingTest1,假定订阅ID为schedulingTest1。

    1,控制队列名称

    要控制队列的名称,请使用Queue属性注释消息类:

    [Queue("TestMessagesQueue", ExchangeName = "MyTestExchange")]
    public class TestMessage
    {
       public string Text { get; set; }
    }
    
    // ...
    
    bus.Subscribe<TestMessage>(string.Empty, msg => Console.WriteLine(msg.Text));

    在这里,我们告诉EasyNetQ将TestMessagesQueue用作队列名称,将MyTestExchange用作交换名称。 注意传递给Subscribe方法的subscriptionId是空的。 如果指定subscriptionId,则它将被追加到末尾并用作队列名称。

    2,有关命名队列的注意事项

    将队列名称设置为空字符串将使用默认的命名行为。队列名称的最大长度为255个字符(这由RabbitMQ客户端库执行)。名称可以是字母,数字,连字符,下划线,句号或冒号的序列。队列名称以“amq”开头。保留给预先声明和标准化的队列。

  • 相关阅读:
    mysql--连接查询(内外连接)
    Mysql--select基础查询
    Mysql--数据定义语言(DDL)
    Mysql--数据操作语言(DML)
    java--String、StringBuilder、StringBuffer的解析和比较?
    Java--equals和 == 的比较和equals()、HashCode()的重写
    Mysql--数据类型
    Mysql--约束
    SpringCloud版本说明
    springBoot 发送邮件
  • 原文地址:https://www.cnblogs.com/zd1994/p/8650876.html
Copyright © 2020-2023  润新知