Гарантирует ли производитель Spring Kafka доставку по умолчанию? - PullRequest
0 голосов
/ 29 мая 2019

Интересно, spring kafka Производитель в пределах spring boot гарантирует доставку или нет.

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

1 Ответ

0 голосов
/ 30 мая 2019

Здесь есть несколько понятий:

  1. Производитель будет генерировать события и отправлять их на сервер kafka.Вы должны знать со стороны производителя о повторных попытках и тому подобном, если у Kafka будет время простоя или другие сценарии ошибок, специфичные для вашего контекста.
  2. Потребители будут назначать разделы по Kafka, каждый раздел будет доставлять события икаждое событие будет иметь смещение.Потребители будут запрашивать данные из kafka (они будут запрашивать данные, kafka не будет передавать данные потребителям, но потребители будут переходить к kafka и запрашивать данные).Каждое событие, которое с успехом доставляет Кафка потребителям, будет производить и Признание, и Кафка возьмет на себя смещение события.Так что следующее мероприятие с более высоким смещением будет доставлено потребителю.Если потребитель отключится, разделы будут переназначены другим потребителям, поэтому вы не потеряете свои данные.Если у вас есть только один потребитель, данные будут храниться в Kafka, и когда потребитель вернется, он пойдет и запросит данные с самого последнего / самого раннего смещения.
...