.Net Core中的Kafka消费者[关闭]
Posted
技术标签:
【中文标题】.Net Core中的Kafka消费者[关闭]【英文标题】:Kafka Consumer In .Net Core [closed] 【发布时间】:2020-05-01 22:43:16 【问题描述】:我想在我们基于微服务的项目中使用 Kafka 作为消息代理。实施消费者的最佳实践是什么?我们应该在 WebApi 中实现作为后台服务并添加托管服务或独立控制台应用程序吗?由于监听队列的无限循环,出于性能和可扩展性的原因,我怀疑在 API 项目中使用。尽管如此,我必须在 WebApi 中使用模型和类。为了便于扩展,最好为消费者使用专用线程并使用控制台应用程序。我想知道在 .Net Core 中实现 Kafka 消费者是否有任何最佳实践或示例?
【问题讨论】:
您的应用程序是如何托管的?现场?云?基于网络? 我们在云上为应用程序使用专用服务器。应用程序将基于网络。 【参考方案1】:在 Web 应用程序中,您应该让后台工作线程来处理 consumer instances。
如果您想持续处理 Kafka 记录,则需要无限轮询循环。
【讨论】:
我很好奇 HostedService 背景是否普遍? @SaherAhwal 我不知道 ASP.NET 的内部结构,那你是什么意思? docs.microsoft.com/en-us/aspnet/core/fundamentals/host/… @SaherAhwal 这和 Kafka 有什么关系?没有必要有这样的东西,因为 Kafka 本身就有一个轮询连续循环。我的意思是线程,而不是工人 这可能是因为 Kafka Confluent 客户端没有 ConsumeAsync。没有?以上是关于.Net Core中的Kafka消费者[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何获取Kafka的消费者详情——从Scala到Java的切换
kafka confluent .NET 1.8.2 如何在消费者配置中覆盖 max.poll.interval.ms?