Spring 带卡夫卡耗电元件的断路器
是否有一种方法可以通过基于消费者的弹簧卡夫卡实现断路器模式。我想知道,在实现我的Spring kafka consumer时,如果基于某个外部系统处理数据失败并引发网络错误,是否可以停止使用记录。但是,如果网络问题得到解决,则用电设备应再次正常处理。使用死信队列(DLQ)重试是处理用电设备故障的良好模式,断路器模式是处理生产商问题的良好模式。给出:Spring 带卡夫卡耗电元件的断路器,spring,apache-kafka,kafka-consumer-api,circuit-breaker,Spring,Apache Kafka,Kafka Consumer Api,Circuit Breaker,是否有一种方法可以通过基于消费者的弹簧卡夫卡实现断路器模式。我想知道,在实现我的Spring kafka consumer时,如果基于某个外部系统处理数据失败并引发网络错误,是否可以停止使用记录。但是,如果网络问题得到解决,则用电设备应再次正常处理。使用死信队列(DLQ)重试是处理用电设备故障的良好模式,断路器模式是处理生产商问题的良好模式。给出: 服务A生成主题T事件e1 服务B使用主题T事件e1并调用远程REST服务r1 然后: 由于服务A和B通过主题T进行交互,因此不需要背压 您需要
- 服务A生成主题T事件e1
- 服务B使用主题T事件e1并调用远程REST服务r1
- 由于服务A和B通过主题T进行交互,因此不需要背压
- 您需要关闭服务B和远程REST服务r1之间的电路。要做到这一点,您只需使用spring boot@HystrixCommand并在“fallbackMethod”方法中抛出一个异常。这将不会提交偏移量,只要电路开路,您将重新使用事件e1
我就是这样做的:-)如果你找到了更好的方法,请分享 如果要在下游服务或数据库关闭时停止使用消息,可以参考此解决方案 范例
- 消费者正在呼叫服务A
- 服务A正在调用外部HTTP服务B
- 您想在外部服务B关闭时设置断路器
您可以使用apache camel实现这一点。看看有没有人能给我分享这个URL的github链接