【问题标题】:Configuring ReplyingKafkaTemplate for getting the responses from multiple topics配置 ReplyingKafkaTemplate 以获取来自多个主题的响应
【发布时间】:2021-04-29 07:34:29
【问题描述】:

我有一个要求,我必须在 Kafka 中使用同步请求-回复模式,因此我使用 ReplyingKafkaTemplate 来做同样的事情。

作为实现的一部分,有一个生产者在一个主题(input-message-topic1)上推送请求消息,但作为回报,我期待来自两个主题的响应( output-message-topic1output-message-topic2) 我必须进一步汇总和处理。

问题:是否可以使用 ReplyingKafkaTemplate / AggregatingReplyingKafkaTemplate 或任何其他使用 Kafka 同步请求-回复模式的实现来实现上述场景?

【问题讨论】:

    标签: apache-kafka kafka-consumer-api spring-kafka


    【解决方案1】:

    是的,AggregatingReplyingKafkaTemplate 会这样做;只需将其侦听器容器配置为从两个主题中消费;回复必须包含相关 id 标头(用于聚合)。

    【讨论】:

    • 感谢加里的回复。我尝试了这个建议,它按预期工作。
    • 我不确定是否必须发布新问题,但我必须实施哪些更改才能使上述解决方案与多个消费者实例兼容,因为目前一次只有一个消费者主机获得回应。
    • 消费者必须在不同的组中(group.id);如果他们都在同一组中,则只有一个会收到请求。如果您的意思是多个模板实例向多个服务器实例发出请求,请参阅 [the documentation(docs.spring.io/spring-kafka/docs/current/reference/html/…)。如果您仍然遇到问题,请针对您的代码/配置和更多详细信息提出新问题。
    猜你喜欢
    • 2020-09-12
    • 2019-08-05
    • 1970-01-01
    • 1970-01-01
    • 2020-03-15
    • 2011-05-09
    • 2020-05-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多