[英]How to change names of error queues and exchanges in MassTransit for RabbitMQ?
[英]Why a simple configuration in MassTransit creates 2 queues and 3 exchanges?
我创建了一个MassTransit快速入门程序来与我的本地RabbitMQ进行交互:
namespace ConsoleApp1
{
public static class Program
{
public class YourMessage
{
public string Text { get; set; }
}
public static async Task Main(params string[] args)
{
var bus = Bus.Factory.CreateUsingRabbitMq(sbc =>
{
var host = sbc.Host(new Uri("rabbitmq://localhost"), h =>
{
h.Username("guest");
h.Password("guest");
});
sbc.ReceiveEndpoint(host, "test_queue", ep =>
{
ep.Handler<YourMessage>(async context => await Console.Out.WriteLineAsync($"Received: {context.Message.Text}"));
});
});
await bus.StartAsync();
await bus.Publish(new YourMessage{Text = "Hi"});
Console.WriteLine("Press any key to exit");
Console.ReadKey();
await bus.StopAsync();
}
}
}
一切看起来都很好,直到我实际检查了底层RabbitMQ管理并发现,对于这个非常简单的程序,MassTransit创建了3个交换和2个队列。
交流,所有扇出:
ConsoleApp1:Program-YourMessage
:持久 VP0003748_dotnet_bus_6n9oyyfzxhyx9ybobdmpj8qeyt
:自动删除且持久吗? test_queue
:持久 队列:
VP0003748_dotnet_bus_6n9oyyfzxhyx9ybobdmpj8qeyt
:x到期60000 test_queue
:持久 我想知道为什么所有这些都是必需的还是默认配置? 特别是,我不太确定要创建这么多的对象。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.