编程语言
首页 > 编程语言> > c#-Kafka Confluent库中轮询和消耗之间的区别

c#-Kafka Confluent库中轮询和消耗之间的区别

作者:互联网

Confluent Kafka库的github示例page列出了两种方法,即轮询和消耗.两者有什么区别.

我确实在Confluent Kafka库here中查看了Consumer的实现,觉得它们在功能上是相同的,仅在返回值方面有所不同.

Poll()调用consumer()来查看是否有准备接收的消息,如果是,则调用OnMessage事件.而使用,将消息保存在其参数之一中,然后返回布尔值.我觉得实现上有所不同,而且功能上相同
https://github.com/confluentinc/confluent-kafka-dotnet/blob/master/src/Confluent.Kafka/Consumer.cs

解决方法:

你是对的.
https://github.com/confluentinc/confluent-kafka-dotnet/blob/3f48e8944242abf631ea8d2cd5698f6e149e0731/src/Confluent.Kafka/Consumer.cs#L1147

轮询与使用相同,只是公开具有不同语义的消息.消费将返回in参数的消息,而轮询将返回null并触发OnMessage事件.

编辑:在v1中,仅剩下Consume调用,不再造成混乱.

标签:kafka-consumer-api,confluent-kafka,apache-kafka,c
来源: https://codeday.me/bug/20191109/2011391.html