Я использую функцию Spring Cloud для обработки данных из kafka с Flux. По умолчанию он обрабатывает данные в потоке-получателе (где используется сообщение). Я собираюсь реализовать пул потоков для обработки и регулирования данных параллельного интерфейса, и в Spring Cloud Integration есть отличная реализация, называемая executorChannel (https://docs.spring.io/spring-integration/api/org/springframework/integration/channel/ExecutorChannel.html)
Пример реализации функции:
public static class FN1 implements Function<Flux<String>, Flux<String>> {
public Flux<String> apply(Flux<String> data) {
return data
.map(f -> doSomething() )
}
}
Поэтому я не нашел простого способа соединить функции, реализованные таким образом, через executorChannel.
Мб, есть способ определить тип inputChannel?
UPD: читать комментарии под ответом Олега. Они очень полезны.