Spring Webflux - возможно ли включить / реализовать реактивное обратное давление (вместо тяги)? - PullRequest
0 голосов
/ 18 октября 2018

Можно ли добавить реактивное push противодавление для Publisher?

Из того, что я видел, это очень выполнимо как Subscriber:

Обратное давление - это когда обратный поток может сказать восходящему потоку отправить ему меньшее количество данных, чтобы предотвратить его переполнение.

Я хочу сделать наоборот -- Я хочу замедлить или даже приостановить восходящий поток, когда определенный нисходящий поток не может идти в ногу.Мне было интересно, есть ли хороший реактивный способ сделать это, например, реализовать пользовательский OverflowStrategy? существующие стратегии не соответствуют моему сценарию.

Я не могу выбросить сообщения или сообщения об ошибках, и я не могу использовать буферную стратегию, потому что в конечном итоге мне не хватит памяти.

Я могу придумать собственное решение, в которомобъекты, которые я излучаю, объединяются в пул, так что я могу ограничить количество объектов в памяти и освободить их, когда они потребляются, но это не похоже на реактивное решение.

...