【问题标题】:Kafka stream - Bidirectional卡夫卡流 - 双向
【发布时间】:2018-11-09 01:05:15
【问题描述】:

假设我想实现一个同时充当生产者和消费者的应用程序。客户端应该能够订阅一组主题并接收事件。它还应该能够在收到事件时进行回复,而无需生产者订阅主题。那可能吗?你有什么建议?我需要为此目的使用 Kafka 流吗?

谢谢, 阿迪布

【问题讨论】:

  • 我知道 kafka 我的问题不是关于如何使用 kafka

标签: apache-kafka apache-kafka-streams


【解决方案1】:

这取决于你想做什么。正如@WGSSAMINTHA 所指出的,只有消费者订阅主题。 Producer 始终可以写入任何主题(只要没有配置限制访问的 ACL)。

您可以直接在您的应用程序中使用KafkaConsumerKafkaProducer。这样做的好处是您在应用程序中具有完全的灵活性。但是,您还需要自己处理所有事情。

也可以使用KafkaStreamsKafkaStreams 的优势在于它提供了更高级别的抽象,提供内置的容错状态处理和高级 DSL。它不如普通的 KafkaConsumerKafkaProducer 灵活,但对你来说可能也不太有用。

这是灵活性/便利性的权衡。

【讨论】:

    【解决方案2】:

    只有消费者需要订阅主题,因为消费者总是监听主题并选择事件。

    生产者只是向主题发送事件,不需要监听主题。

    【讨论】:

    • 我从答案中删除了 ELK,但我建议将 Kafka Connect 用于 Elasticsearch 而不是普通的 Producer
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-08
    • 2018-03-06
    • 2016-08-03
    • 2018-09-15
    • 2018-03-07
    • 2019-11-13
    相关资源
    最近更新 更多