apache-kafka - 使用 dotnet 客户端使用 kafka 作为数据库
问题描述
我一直在研究使用 Confluent.Kafka 客户端库从 dotnet 应用程序中使用 kafka 作为数据库(我读过的内容是合法的用例)。
给定一个压缩日志主题,我希望能够在每次应用程序启动时从偏移量 0 读取并在本地缓存结果。然后消费后续消息更新本地缓存。
以下消费者配置有效,但我不确定以这种方式设置消费者是否正确。
var config = new ConsumerConfig
{
BootstrapServers = "localhost:29092",
GroupId = Guid.NewGuid().ToString(),
EnableAutoCommit = false
};
为了让应用程序的多个实例运行,我将 GroupId 设置为 Guid,以确保每个新实例都能获取所有消息。
为了始终从偏移量 0 读取,我将 EnableAutoCommit 设置为 false,并且我没有手动提交以不更新偏移量。dotnet 客户端库似乎没有从头开始读取的选项。
代理是否要应对应用程序反复创建新的 GroupIds?
从不做一件好事吗?
我是否试图做一些我不应该做的事情?
解决方案
推荐阅读
- swift - 用于 UI 更新的领域集合插入
- javascript - 来自 REST API 的 Aurelia 动态路由
- r - 使用 R 绘制时间序列中的观察值
- node.js - 获取有关 App Engine 资源的 IAM 政策
- python - 如何将函数传递给要设置为类变量的类?我收到“不可调用”错误
- java - 如何在 saxon 9.7+ s9api 中使用打包(导出)的样式表?
- sql - 需要在 SQL SERVER 中的一列上选择 DISTINCT
- python - 在 Python 中使用 cloudcraper / cfscrape / sellenium 绕过 reCAPTCHA
- mongodb - 如何使用其他两个字段的组合更新 mongodb 中的特定字段?
- python - Twitter 和 Python:在这里努力理解我的“列表索引超出范围”问题