public class BatchSingularEventConsumer: IConsumer<Batch<MySingularEvent>>
{
public Task Consume(ConsumeContext<Batch<MySingularEvent>> context)
{
Console.WriteLine($"Number of messages consumed {context.Message.Length}");
return Task.CompletedTask;
}
}
2条答案
按热度按时间jq6vz3qz1#
大众运输现在有一个实验性的功能,处理个别消息的一批。
配置总线:
创造你的消费者:
您可以使用消息限制和时间限制配置批处理。
我建议阅读ChrisPatterson关于Batch Message Consumption问题的文章,特别是关于预取的部分
批处理大小必须小于或等于任何预取计数或并发消息传递限制,才能达到大小限制。如果其他限制阻止达到批处理大小,则永远不会调用使用者。
批量消费在大众运输网站上也是documented。
06odsfpq2#
事实证明,今天你可以做到这一点: