繁体   English   中英

客户端可以使用 spring kafka API 和服务器端使用 apache kafka API 来实现 spring 请求回复吗?

[英]Can spring request reply can be implemented with client side using spring kafka API's and server side using apache kafka API?

可以使用 spring kafka API 的客户端和使用 apache kafka API 的服务器端实现 spring 请求回复吗?

弹簧为Apache卡夫卡提供了使用该请求/回复ReplyingKafkaTemplate@KafkaListener@SendTo

文档在这里

编辑

使用多个客户端实例时...

如果您有多个客户端实例并且没有按照上一段中讨论的方式配置它们,则每个实例都需要一个专用的回复主题。 另一种方法是设置 KafkaHeaders.REPLY_PARTITION 并为每个实例使用专用分区。 Header 包含一个四字节的 int(大端)。 服务器必须使用此标头将回复路由到正确的分区(@KafkaListener 这样做)。 但是,在这种情况下,回复容器不得使用 Kafka 的组管理功能,并且必须配置为侦听固定分区(通过在其 ContainerProperties 构造函数中使用 TopicPartitionOffset)。

使用单个回复主题进行配置时,每个实例必须使用不同的 group.id。 在这种情况下,所有实例都会收到每个回复,但只有发送请求的实例才能找到相关 ID。 这对于自动缩放可能很有用,但会产生额外的网络流量开销,并且丢弃每个不需要的回复的成本很小。 使用此设置时,我们建议您将模板的 sharedReplyTopic 设置为 true,这会降低对 DEBUG 的意外回复的日志记录级别,而不是默认的 ERROR。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM