我想提前道歉,但我对大众交通不太有经验。 我需要帮助创建仲裁队列并将队列的“ha-mode”设置为 MassTransit 8.0.15 的“全部”
我的代码是:
services.AddMassTransit(mt =>
{
mt.AddConsumer(typeof(FileConsumer))
.Endpoint(e => { e.Name = "my-queue"; e.InstanceId = ""; });
mt.UsingRabbitMq((context, rmq) =>
{
rmq.Host(rabbitMqHost, host =>
{
host.Username(userName);
host.Password(password);
});
rmq.ConfigureEndpoints(context);
});
});
任何帮助将不胜感激。谢谢
我尝试添加: rmq.SetQueueArgument("x-queue-type", "quorum"); rmq.SetQueueArgument("x-ha-mode", "all");
但是没有成功
我相信
ha-mode
仅适用于经典队列。仲裁队列完全不同。您可以通过添加配置端点回调来配置接收端点以使用仲裁队列:
mt.AddConfigureEndpointsCallback((name, cfg) =>
{
if (cfg is IRabbitMqReceiveEndpointConfigurator rmq)
rmq.SetQuorumQueue();
});