Инструменты пользователя

Инструменты сайта


linux:kafka

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
linux:kafka [2024/05/08 07:15]
admin [Использование]
linux:kafka [2024/05/10 05:57] (текущий)
admin
Строка 532: Строка 532:
 </code> </code>
 </details> </details>
 +
 +
 +==== Epoch ====
 +
 +
 +==== Overs ====
 +В Кафке по умолчанию вычитывание сообщений из партиции останавливается, когда получатель доходит до битого сообщения, и до тех пор, пока оно не будет пропущено и закинуто в “карантинную” очередь (также именуемой “dead letter queue”) для последующей обработки, чтение партиции продолжить не получится.
 +
 +ZooKeeper при подключении нового читателя производит перераспределение участников в Consumer Group таким образом, чтобы каждая партиция имела одного и только одного читателя
 +
 +
 +==== Параметры ====
 +
 +=== ? Параметры потребителей ? ===
 +
 +**max.poll.records**\\
 +По умолчанию 500, максимальное кол-во записей, возвращаемых одним вызовом **poll()**\\
 +Изменение вроде не сильно влияет, потребитель кэширует записи и постепенно возвращает оттуда\\
 +
 +
 +**max.poll.interval.ms**\\
 +По умолчанию 5мин, макс задержка между вызовами **poll()**. т.е. время в течении которого потребитель может бездействовать, если метод **poll()** не вызывался в течении этого времени то клиент считается отвалилшимся и консьюмер группа начинает перебалансировку\\
 +
 +
 +<details>
 +<summary>:!: Быстродействие потребителя</summary>
 +Два выше рассмотренных свойства задают требования к приложению клиента, оно должно потреблять "max.poll.records" за "max.poll.interval.ms"\\
 +
 +Увеличение "max.poll.records" может снижить пропускную способность изза роста накладных расходов\\
 +Увеличение "max.poll.interval.ms" может замедлить скорость отклика при перебалансировке потребителей\\
 +</details>
 +
 +
 +**fetch.max.bytes**\\
 +Дефолт 50мб, макс размер пакета запрашиваемого консьюмером во время чтения. Концептуально связан с "request.timeout.ms"\\
 +
 +
 +**request.timeout.ms**\\
 +Таймаут, за который консьюмер ожидает запрошенные данные от брокера\\
 +
 +
 +**group.instance.id**\\
 +Что то связано со статическими потребителями, и отвал статического будет по истечении **session.timeout.ms**\\
 +
 +
 +
 +
 +==== CLI ====
 +=== Topics ===
 +
 +<details>
 +<summary>:!: Расширенный вывод (desribe)</summary>
 +По мимо всего прочего, показано 3 столбца:\\
 +**Leader**\\
 +Указан брокер где находится лидер-партиция. Кафка равномерно распределяет лидеров между досутпными брокерами\\
 +Вроде вручную это не регулируется\\
 +
 +
 +**Replicas**\\
 +Указаны брокеры которые реплицируют данные партиции, вне зависимости от лидерства\\
 +Первый идентификатор представляет предпочтительного лидера, поэтому кафка попытается сделать его лидером партиции\\
 +:!: В случае отвала брокера, резервный лидер партиции выбирается именно из этого столбца, проверено практикой, надежно\\
 +
 +
 +**Isr**\\
 +Означает синхронизированную реплику.\\
 +Сообщения шлются в лидера, затем если есть репли-фактор то фоловеры копируют новые сообщения себе, вычитывают.\\
 +Брокер считает засинхронизирован если не сильно отстает (Replica.lag.time.max.ms)\\
 +Здесь что то тоже упоминается про приоритет выбора, может это про контроллер ? (пока один раз сошлось, хотя нет)\\
 +
 +
 +
 +</details>
 +
 +
 +
 +
 +====  ====
 +====  ====
 +====  ====
 +====  ====
 +
 +
 +<details>
 +<summary>:!: </summary>
 +
 +</details>
 +
 +
  
  
linux/kafka.1715152542.txt.gz · Последнее изменение: 2024/05/08 07:15 — admin