Заказ и комплектация наборов в шторм с носиком кафки

Когда у нас есть топология, которая берет записи чтения из kafka, сохраняется ли входящий порядок при обработке событий?

Допустим, топология

      A Kakfa spout -> B bolt -> C bolt -> D bolt -> H bolt
                        |                         ^
                        |                         |
                        -> E bolt -> F bolt -> G bolt


(Here B bolt can emit to either C or E bolt. Both D and G bolt output to H bolt)

И допустим события Кафки таковы

      |1 | 2 | 3 | 4 | 5 | 6

скажем

      Event 1 will take route A -> B -> E -> F -> G -> H
Event 2 will take route A -> B -> C -> D -> H
And A -> B -> E -> F -> G -> H route take longer time compared to A -> B -> C -> D -> H

у меня следующие вопросы

  1. Может ли случиться так, что событие 2 придет к болту Н раньше, чем событие 1?

  2. Поскольку событие 2 будет подтверждено всеми болтами раньше, чем событие 1, когда происходит подтверждение кафки для события 2? Только когда все события до события 2 были подтверждены?

    а. Если да, это означает, что мы ограничены самым медленным событием для подтверждения события?

    б. В случае смерти носика А мы будем повторять все события до этого?

    в. Можно ли настроить, сколько сообщений может храниться неподтвержденным в каждом носике? Есть ли какая-либо метрика, которая может сказать мне в любой момент времени, сколько сообщений разархивировано в носителе на уровне раздела?

0 ответов

Другие вопросы по тегам