卡夫卡消费者的断路器

问题描述 投票:0回答:2

有没有办法实现基于Spring Kafka的消费者的断路器模式。我想知道在实现我的Spring kafka使用者时,如果基于某些外部系统无法处理数据并且引发网络错误,则可以停止使用记录。但是,如果解决了网络问题,则消费者应该再次正常处理。

spring apache-kafka kafka-consumer-api circuit-breaker
2个回答
0
投票

使用死信队列(DLQ)进行重试是处理消费者故障的良好模式,而断路器模式可以很好地处理生产者问题。


0
投票

鉴于:

  • 服务A生成主题T事件e1
  • 服务B从主题T事件e1消耗并调用远程REST服务r1

然后:

  • 当服务A和B通过主题T进行交互时,不需要背压。
  • 您需要关闭服务B和远程REST服务r1之间的电路。为此,您可以使用Spring引导@HystrixCommand并在“fallbackMethod”方法中引发异常。这不会提交偏移量,只要电路打开,您就会重新使用事件e1。

这就是我做的方式:-)如果你找到了更好的方法请分享!

© www.soinside.com 2019 - 2024. All rights reserved.