我对消费消息有一个清晰的认识:http://docs.masstransit-project.com/en/latest/usage/consumer.html
这些实现一次只处理一条消息。
我需要批量处理多个消息,批量处理。
事实证明,今天你可以做到这一点:
public class MyConsumer : IConsumer<Batch<MyMessage>>
{
public async Task Consume(ConsumeContext<Batch<MyMessage>> context)
{
...
}
}
MassTransit目前没有批量消息消费。您可以尝试使用TPL和Reactive的混合方式将消息读入批处理,但MassTransit的意图和设计是将批处理分解为可以单独处理的消息。
如果您需要批量处理,可能像Event Hub或Kafka这样的东西对您的目的更有意义。