Rabbitmq 公共交通在轻载情况下跳过命令

Rabbitmq 公共交通在轻载情况下跳过命令,rabbitmq,masstransit,Rabbitmq,Masstransit,我最近建立了一个简单的公共交通服务,可以处理命令。如果我一次发送3个命令,它将正确地使用前2个命令,那么第三个命令将被放入*\u skipped队列中。我的理解是,只有在端点没有消费者可以处理的情况下,才应该将命令放在跳过的队列上,所以我不明白为什么应该跳过第三个命令。我可以做些什么来进一步调查并解决问题 这是消费者的配置 services.AddMassTransit(x=> { x、 AddBus(provider=>Bus.Factory.CreateUsingRabbitMq(cfg=>

我最近建立了一个简单的公共交通服务,可以处理命令。如果我一次发送3个命令,它将正确地使用前2个命令,那么第三个命令将被放入
*\u skipped
队列中。我的理解是,只有在端点没有消费者可以处理的情况下,才应该将命令放在跳过的队列上,所以我不明白为什么应该跳过第三个命令。我可以做些什么来进一步调查并解决问题

这是消费者的配置

services.AddMassTransit(x=>
{
x、 AddBus(provider=>Bus.Factory.CreateUsingRabbitMq(cfg=>
{
var host=cfg.host(_settings.RabbitMqConnectionString,“/”,h=>{});
cfg.UseInMemoryScheduler();
//UseMessageScheduler(新Uri(“rabbitmq://localhost/quartz"));
UseExtensionsLogging(provider.GetRequiredService());
ReceiveEndpoint(主机,CoursulumQueryHelper.EndpointName,e=>
{
e、 消费者(提供者);
});
ReceiveEndpoint(主机,CoursulumCommandHelper.EndpointName,e=>
{
e、 消费者(提供者,配置=>
{
//config.UseConcurrencyLimit(1);
});
});
}));
});

结果是另一个服务注册了一个端点,其地址与我向其发送命令的地址相同,这导致命令被跳过。

跳过队列中的第三条消息是否与前两条消息的类型相同?如果查看JSON,MessageType值是否相同?是的。它们是同一类型的当然了,当跳过的消息出现时几乎总是这样。很高兴你明白了!