我已经关注 MassTransit 几个星期了,我很好奇其中的可能性。但是,我似乎无法完全正确地理解这些概念。
预期的行为 我想发布消息以“直接”交换与绑定到两个不同队列以执行其他活动的路由键。
当我使用 MassTransit 尝试相同的逻辑以获得更好的可扩展性时。我发现 MassTransit 基于具有扇出类型的队列名称创建自己的交换。
通过交换和路由键发布消息的经典代码
using (var connection = factory.CreateConnection())
{
using (var channel = connection.CreateModel())
{
channel.ExchangeDeclare(exchange, "direct");
var body = Encoding.UTF8.GetBytes(message);
channel.BasicPublish(exchange, routingKey, null, body);
Console.WriteLine(" [x] Sent {0}", message);
}
}
有没有办法在 MassTransit 中使用 routingkey 配置直接或主题交换?