Свойства узла процесса интеграции вида «KafkaНазначение»
Узел этого вида является клиентом-поставщиком, предназначенным для записи исходящих из «1С:Шины» сообщений в брокер Apache Kafka.
- для свойств ИмяПользователя, Пароль и Топик необходимо указать ссылку на соответствующие свойства участника;
- при выборе протокола безопасности SaslSsl необходимо указать ссылку на свойства участника для свойств узла ПутьХранилищаДоверенныхСертификатов и ПарольХранилищаДоверенныхСертификатов;
- для задания значения необязательного свойства ИдКлиента необходимо использовать ссылку на соответствующее свойство участника.
Свойства узла
- Имя
- Имя узла, уникальное в рамках процесса интеграции. Используется для обращения к узлу из встроенного языка (УзелСхемы.Имя). Должно начинаться с буквы, за которой следуют буквы, цифры или символы '_' (нижнее подчеркивание). Минимальная длина — 2 символа
- Описание
- Произвольное описание узла для разработчика. Используется при редактировании схемы процесса интеграции. Недоступно из встроенного языка
- ОбновлениеМетрик
- Обработчик, внутри которого можно обновлять метрики, добавленные в проект
разработчиком.
Пример:
// Разработчик добавил в проект метрику «СчетчикВУзле». Тогда обновить метрику в узлах // можно следующим образом: метод ОбновлениеМетрик(Контекст: МойПроцессИнтеграции.КонтекстВызова, Сообщение: МойПроцессИнтеграции.Сообщение) пер СчетчикВУзле = МойПроцессИнтеграции.Метрики["СчетчикВУзле"] СчетчикВУзле.Обновить(Сообщение.УзлыПути.Текущий.Узел.Имя, 1) ;
- Длительность хранения доставленных сообщений в формате ДД.ЧЧ
-
Определяет время, в течение которого будут храниться сообщения, доставленные в данный узел. Задается в пользовательском интерфейсе приложения, в карточке процесса интеграции, в свойствах узла. Недоступно в среде разработки.
Длительность задается в формате ДД:ЧЧ (например, 10:02 — 10 дней и 2 часа). Если указать длительность равную 00:00, то доставленные сообщения для данного узла не будут сохраняться в «1С:Шине». Длительность хранения должна быть равна 00:00 (по-умолчанию) либо больше или равна 00:01.
- Хост
-
Параметр Kafka:
bootstrap.servers
. Имя хоста bootstrap-сервера Kafka. Используется для первичного подключения и получения всех доступных серверов кластера. - Порт
-
Параметр Kafka:
bootstrap.servers
. Номер порта bootstrap-сервера Kafka для подключения. По умолчанию — 9092. - ПротоколБезопасности
-
Параметр Kafka:
security.protocol
. Протокол безопасности. Возможные значения:- SaslPlainText (по умолчанию)
- SaslSsl
- МеханизмSasl
- Параметр Kafka:
sasl.mechanism
. Механизм SASL. Возможные значения:- Plain — значение по умолчанию (будет использоваться модуль
org.apache.kafka.common.security.plain.PlainLoginModule
) - ScramSha256 (будет использоваться модуль
org.apache.kafka.common.security.plain.ScramLoginModule
) - ScramSha512 (будет использоваться модуль
org.apache.kafka.common.security.plain.ScramLoginModule
)
- Plain — значение по умолчанию (будет использоваться модуль
- ИмяПользователя
-
Параметр Kafka:
sasl.jaas.config
. Имя пользователя. Значение параметра username для модуля механизма SASL (задается в свойстве МеханизмSasl). - Пароль
-
Параметр Kafka:
sasl.jaas.config
. Пароль пользователя. Значение параметра password для модуля механизма SASL (задается в свойстве МеханизмSasl). - ПутьХранилищаДоверенныхСертификатов
-
Параметр Kafka:
ssl.truststore.location
. Полный путь к файлу-хранилищу доверенных сертификатов в формате jks. Примеры:- C:\\cert\\trustore.jks (Windows)
- C:/cert/trustore.jks (Windows)
- /home/user/cert/trustore.jks (Linux)
Обязательный для протокола безопасности SaslSsl.
- ПарольХранилищаДоверенныхСертификатов
-
Параметр Kafka:
ssl.truststore.password
. Пароль для хранилища доверенных сертификатов. Обязательный для протокола безопасности SaslSsl. - ИдКлиента
-
Параметр Kafka:
client.id
. Логический идентификатор клиента (узла или участника группы участников), который подключается к серверу Kafka. - ТаймаутЗапроса
-
Параметр Kafka:
request.timeout.ms
. Таймаут запроса, миллисекунды. По умолчанию — 30000.
- Топик
-
Имя топика, в который выполняется передача сообщения. Обязательно для заполнения только в том случае, если не указано имя обработчика ВыборТопика. Если задан обработчик ВыборТопика, значение свойства можно оставить пустым. Если при выполнении обработчика ВыборТопика произойдет ошибка, то значение будет вычислено из свойства Топик. Если оно окажется пустым, то будет выброшено исключение обработчика и сообщение не будет доставлено.
- РежимПодтверждения
-
Параметр Kafka:
acks
. Режим подтверждения брокером. Возможные значения:- Все — сообщение считается доставленным, если все сервера в кластере отправили подтверждение о доставке. Используется по умолчанию.
- Лидер — сообщение считается доставленным, если брокер-лидер отправил подтверждение о доставке.
- Отсутствует — «1С:Шина» не дожидается подтверждения о доставке от сервера Kafka. Сообщение считается доставленным сразу после отправки из узла.
- РазмерБуфераПамяти
-
Параметр Kafka:
buffer.memory
. Размер буфера памяти, который использует узел-назначения при накоплении сообщений для отправки на сервер. Не должен быть меньше максимального размера отправляемого сообщения. По умолчанию — 33554432. - МаксимальныйРазмерЗапроса
-
Параметр Kafka:
max.request.size
. Максимальный размер запроса. По умолчанию — 1048576. - МаксимальноеВремяБлокировки
-
Параметр Kafka:
max.block.ms
. Максимальное время блокировки при инициализации запроса, миллисекунды. По умолчанию — 60000. - РазмерПакета
-
Параметр Kafka:
batch.size
. Размер пакета сообщений в запросе, байты. - ЗамедлениеСборкиПакета
- Параметр Kafka:
linger.ms
. Время ожидания при сборке пакета сообщений, миллисекунды. По умолчанию — 0. - РежимСжатия
- Параметр Kafka:
compression.type
. Алгоритм сжатия сообщения. Возможные значения:- Отсутствует (по умолчанию)
- Gzip
- Snappy
- Lz4
- Zstd
- СериализаторЗначения
- Параметр Kafka:
value.serializer
. Сериализатор значения сообщения:- Байты — значение по умолчанию
(
org.apache.kafka.common.serialization.ByteArraySerializer
) - Строка
(
org.apache.kafka.common.serialization.StringSerializer
с параметром кодировки UTF-8)
- Байты — значение по умолчанию
(
- СериализаторКлюча
-
Параметр Kafka:
key.serializer
. Сериализатор ключа сообщения:- Байты — значение по умолчанию
(
org.apache.kafka.common.serialization.ByteArraySerializer
) - Строка
(
org.apache.kafka.common.serialization.StringSerializer
с параметром кодировки UTF-8)
- Байты — значение по умолчанию
(
- ВыборТопика
- Обработчик для выбора значения топика, в который передается сообщение. Заменяет значение из свойства Топик. Если при выполнении обработчика ВыборТопика произойдет ошибка вычисления значения, то будет выполнена попытка вычислить значение из свойства Топик. Если это значение будет так же пустым, то будет выброшено исключение обработчика.
- ВыборРаздела
- Обработчик для выбора значения раздела топика, в который передается сообщение.
- ВыборКлюча
- Обработчик для выбора значения ключа сообщения. Сообщения с одинаковым ключом передаются в одинаковый раздел топика.
- ВыборМоментаОтправки
- Обработчик для выбора значения момента отправки сообщения из шины в брокер. Заменяет момент отправки сообщения по умолчанию (системное время «1С:Шины»).
Пример использования
Контекст: Осуществляется отправка сообщения из системы «1С» в Apache Kafka.
Задача: Отправить сообщение из «1С:Шины» в брокер сообщений Apache Kafka.
Решение: Сообщение приходит в «1С:Шину» от участника из группы «Отправитель» и попадает в узел Канал1СИсточник. В этом узле создается очередь, в которую полученное сообщение сохраняется. Далее используем узел «KafkaНазначение», чтобы подключиться к топику брокера Apache Kafka. На последнем шаге сообщение считывается из очереди «1С:Шины» и записывается в топик брокера Kafka.