【发布时间】:2020-03-17 01:46:29
【问题描述】:
我正在尝试将 Kafka 用于现有系统,以替换旧的消息协议。目前,我们有多种类型的消息(数百种)用于在约 40 个应用程序之间进行通信。有些是高速异步的,有些是基于来自用户/事件的请求。
现在看看 Kafka,它分解了主题和分区等。但我对主题的构成有点困惑。我的应用程序产生的每种类型的消息是否都有自己的主题,允许数百个主题,或者我是否将它们聚集在一起以形成相关的消息类型?如果是第二个答案,应用程序读取消息并在其内容不是它要查找的内容时丢弃它是一种不好的做法吗?
我也处于两难境地,单个应用程序(显示器)将有超过 10 个副本,所有这些副本都会获取大量数据(以某种轻量级视频流的形式),并且将在每个特定节点上发送用户命令。卡夫卡会是一种足够的沟通方式吗?假设最多 10 个,但有时这些特定应用程序可能并不希望始终获取视频流。
第三个也是最后一个问题:我读过一些关于消息重播能力的文章。这只是在一个主题内,还是可以重播能力跨越一系列不同的主题?
【问题讨论】:
标签: apache-kafka kafka-consumer-api kafka-producer-api