Глоссарий: термины Apache Kafka¶
Краткий справочник терминов Apache Kafka, используемых в документации адаптера. Предназначен для 1С-специалистов, впервые сталкивающихся с Kafka.
Платформа¶
Apache Kafka¶
Распределённая платформа для потоковой передачи событий. Принимает сообщения от одних систем (продюсеров) и доставляет их другим (консьюмерам) через именованные каналы — топики.
В отличие от прямых вызовов между системами, Kafka разделяет отправителя и получателя: каждая сторона работает независимо и в удобном темпе. Это обеспечивает надёжность, масштабируемость и устойчивость к временной недоступности участников обмена.
Кластер (Cluster)¶
Группа брокеров, работающих совместно. Обеспечивает отказоустойчивость и горизонтальное масштабирование.
Адаптер подключается к кластеру через одну или несколько точек подключения (bootstrap-серверов), указанных в справочнике Брокеры.
Серверная часть¶
Брокер (Broker)¶
Отдельный сервер (узел) кластера Apache Kafka, который принимает, хранит и отдаёт сообщения.
В адаптере параметры подключения к брокерам настраиваются в справочнике Брокеры.
Топик (Topic)¶
Именованный канал (категория) для хранения и передачи сообщений. Аналог очереди или таблицы журнала.
Каждое сообщение публикуется в определённый топик и читается из него. Продюсер и консьюмер настраиваются на конкретный топик.
Партиция (Partition)¶
Раздел внутри топика. Топик может быть разбит на несколько партиций — это позволяет Kafka параллельно обрабатывать сообщения и хранить их на разных брокерах.
Порядок сообщений
Порядок сообщений гарантирован внутри одной партиции, но не между партициями.
Смещение (Offset)¶
Порядковый номер сообщения внутри партиции. Kafka хранит смещение для каждой группы консьюмеров, что позволяет точно отслеживать, до какого сообщения выполнена обработка.
Адаптер хранит позиции чтения в регистре сведений Позиции операций.
Сообщения¶
Сообщение / Запись (Message / Record)¶
Единица данных в Kafka. Состоит из:
- ключа — необязательный идентификатор, влияет на распределение по партициям;
- тела — произвольный набор байт (как правило, JSON, XML или Avro);
- заголовков — вспомогательные метаданные (необязательно);
- временной метки — момент создания или публикации сообщения.
Клиенты¶
Продюсер (Producer)¶
Клиент Kafka, который публикует (отправляет) сообщения в топик.
В адаптере настройки публикации (топик, формат, сериализация) задаются в справочнике Продюсеры.
Консьюмер (Consumer)¶
Клиент Kafka, который читает сообщения из топика.
В адаптере настройки чтения (топик, формат, десериализация) задаются в справочнике Консьюмеры.
Группа консьюмеров (Consumer Group)¶
Логическая группа консьюмеров, совместно читающих один топик. Kafka распределяет партиции топика между участниками группы — каждая партиция обрабатывается ровно одним консьюмером группы.
Используется для параллельного чтения и горизонтального масштабирования обработки.
Подключение¶
Bootstrap-серверы (Bootstrap Servers)¶
Начальный список адресов брокеров, к которым клиент подключается при старте. После первого соединения клиент получает актуальную топологию кластера автоматически.
Указывается в настройках подключения справочника Брокеры.