Я использую Spring 5 WebClient для многократного извлечения некоторого состояния работающего процесса из API REST.
С помощью здесь Я сейчас пришел к этому решению:
webClient.get().uri(...).retrieve.bodyToMono(State.class)
.repeat()
.skipUntil(state -> stateFinished())
.limitRequest(1)
.subscribe(state -> {...});
Пока это работает, запрос get запускается с очень высокой скоростью.Как правильно ограничить частоту запросов, скажем, 1 запросом в секунду?
Я пытался использовать delayElements(Duration.ofSeconds(1))
, но это только задерживает результаты, а не сам запрос.