Обработка потока из темы в одну и ту же тему (круговая обработка) - PullRequest
0 голосов
/ 03 октября 2019

У меня проблемы с обработкой потока из темы в одну и ту же тему (она называется «ресторан»).

Кажется, все работает нормально, если я создаю другую тему. Но если я произвожу тему «Ресторан», события, похоже, не будут зарегистрированы. Также я могу посмотреть поток и во всех случаях увидеть правильные события в потоке.

В потоке ресторана есть события (заказы). Процессор обогащает их и отправляет обратно в ресторан под именем 'enrichedOrder'.

final StreamsBuilder builder = new StreamsBuilder();

KStream<String, Event>[] source = builder.stream("restaurant",consumed)
  .branch(
    (key, value) -> value.name.equals("order"), 
    (key, value) -> true
  );

  source[0].mapValues( (value)->{value.name="enrichedOrder"; return value;} )
    .to("restaurant");

В теме ресторана есть события 'enrichedOrder'.

Возможно ли это вообще?

Я использую облачную платформу Confluent с API-интерфейсом kafka-streams 2.3.

1 Ответ

0 голосов
/ 07 октября 2019

Оказалось, что все отлично работает в реальном коде. Но веб-интерфейс Confluent по какой-то причине не отображал эти новые события. (Я использовал веб-интерфейс Confluent для мониторинга темы).

...