Apache kafka 使用ReplyingKafkaTemplate处理多个响应

Apache kafka 使用ReplyingKafkaTemplate处理多个响应,apache-kafka,spring-kafka,Apache Kafka,Spring Kafka,我正在尝试实现一种回复模式,在这种模式中,我发布一条消息,指向几个消费群体所收听的主题。这意味着他们都将获得消息,并在回复主题中提交响应 问题是因为它们都响应同一条消息,只有回复主题中的第一条收到的消息才会被回复。其他的将被丢弃。 如果我知道回复主题上应该有多少个响应,请拨打该号码-n,我如何让回复KafkatTemplate等待n个响应,然后解析答案? 我试着从这个例子中推断出来,但还是不太明白。 谢谢。该模板严格用于单一请求/回复处理 您不能将其用于您的用例 使用KafkaTemplate和

我正在尝试实现一种回复模式,在这种模式中,我发布一条消息,指向几个消费群体所收听的主题。这意味着他们都将获得消息,并在回复主题中提交响应

问题是因为它们都响应同一条消息,只有回复主题中的第一条收到的消息才会被回复。其他的将被丢弃。 如果我知道回复主题上应该有多少个响应,请拨打该号码-n,我如何让回复KafkatTemplate等待n个响应,然后解析答案? 我试着从这个例子中推断出来,但还是不太明白。
谢谢。

该模板严格用于单一请求/回复处理

您不能将其用于您的用例


使用KafkaTemplate和单独的侦听器;你将不得不将回复本身联系起来。

也考虑研究Spring集成及其分散集合实现:合理的方法是扩展复制KAFKATEMPLATE,实现OnMead和SunDand接收来处理MAP而不是MAP吗?是的,这是一个合理的方法;但是您可能不需要更改send方法;只需将您的R泛型类型设置为集合。但我只是在看它,它可能需要一些重构,使它更容易子类化;您可能最终不得不从onMessage复制一堆代码。当然,除非实现超时以返回部分结果,否则只有当您知道预期的回复数量时,它才会起作用。如果您认为社区可能感兴趣,请随时将其贡献回框架。谢谢您的指点。我想我可能必须复制整个类,因为onMessage访问私有的future类。PS:我应该继续讨论github吗?是的,这就是我关于重构的意思,使子类化更容易。对请移到GitHub。。