Skip to content

Rabbitmq传输

这个页面将详细介绍NebulaBus的Rabbitmq传输。

配置

要配置NebulaBus使用Rabbitmq传输,请安装Nuget包 NebulaBus.Transport.Rabbitmq:

shell
dotnet add package NebulaBus.Transport.Rabbitmq

然后使用如下代码添加Rabbitmq传输:

csharp
options.UseRabbitmqTransport(rabbitmq =>
{
    rabbitmq.HostName = "";
    rabbitmq.UserName = ""
    rabbitmq.Password = "";
    rabbitmq.VirtualHost = "";
});

UseRabbitmqTransport 方法传入的是Action<RabbitmqOptions>,因此RabbitmqOptions可配置参数如下

  • UserName:rabbitmq用户名,默认为guest
  • Password:rabbitmq密码,默认为guest
  • HostName:rabbitmq主机名,默认为localhost,如果是集群模式,则需要配置多个HostName,以逗号分隔
  • VirtualHost:rabbitmq虚拟主机,默认为/
  • Port:rabbitmq端口,默认为5672
  • ExchangeName: rabbitmq交换机名,默认为nebula-bus-exchange
  • SslOption: Rabbitmq SSL配置,默认为null,如何使用SSL,请自行参考Rabbitmq.NET Client文档。
  • Qos: Rabbitmq Qos配置,默认为0表示不限制,如何使用Qos,请自行参考Rabbitmq.NET Client文档。
  • GetQos:这是Func<string, string, ushort> 类型,表示获取Qos的函数,默认为null,第一个参数为Handler 的Name,第二个参数Handler Group,可批量为不同的Handler配置不同的Qos

具体代码示例可以参考:

https://github.com/JiewitTech/NebulaBus/tree/main/src/Samples/RabbitmqWithRedisStoreWebApiSample