【发布时间】:2021-04-08 17:08:05
【问题描述】:
我有与this question 类似的问题,但我没有看到可接受的答案。我研究了一遍,没有得到满意的答案。
我有一个轮询量为“x”的反应式 Kafka 使用者(Spring Reactor),应用程序使用反应式 Web 客户端将轮询的消息推送到反应式端点。这里的问题是外部服务的超时执行可能不同,当我们看到很多故障时,我将不得不调整 Kafka 消费者以在断路器打开(或启动背压)时轮询更少的消息。目前的反应堆有没有办法自动
- 在断路器处于打开状态时做出反应,减少轮询量或减慢消耗。
- 在电路关闭时将轮询数量增加到之前的状态(如果它关闭,外部服务将按比例增加)。
我不想使用delayElements 或delayUntil,因为它们本质上大多是静态的,并且希望应用程序在运行时做出反应。如何配置这些端到端背压?当电路关闭、部分关闭和在应用配置中打开时,我会为消费者提供值。
【问题讨论】:
标签: java reactive-programming project-reactor circuit-breaker reactive-kafka