Вы используете одну и ту же привязку ввода в обоих процессорах, и поэтому вы видите, что только один работает. Добавьте еще одну привязку ввода в интерфейс привязки и установите ее назначение на тот же topi c. Кроме того, измените один из методов StreamListener
, чтобы использовать это новое имя привязки.
С учетом сказанного, если вы используете последние версии Spring Cloud Stream, вам следует рассмотреть возможность перехода на функциональную модель. Например, должно работать следующее:
@Bean
public Function<KStream<String, PageViewEvent>, KStream<String, Long>> processPageViewEventForLast5Mintues() {
...
}
и
@Bean
public Function<KStream<String, PageViewEvent>, KStream<String, Long>> processPageViewEventForLast30Mintues() {
...
}
В этом случае связыватель автоматически создает две отдельные привязки ввода. Для этих привязок можно указать места назначения.
spring.cloud.stream.bindings.processPageViewEventForLast5Mintues-in-0.destination=<your Kafka topic>
spring.cloud.stream.bindings.processPageViewEventForLast30Mintues-in-0.destination=<your Kafka topic>