Дизайнер процессов
Отправка в Kafka

Работа с кафкой

Для проектирования взаимодействия с кафкой необходимо добавить кубик и выбрать у него соответствующий тип:

  • Отправка сообщения / Send Task (черный конвертик);
  • Получение сообщения / Receive Task (белый конвертик);
  • Отправка/получение сообщения, кастомный кубик (белый и черный конвертики)

Отправка сообщения (Send Task)

На вкладке "Общее" необходимо указать или выбрать имя топика, в который будет отправлено сообщение. Пример:

empty

На вкладке "Ввод, Вывод" передаются "Входные параметры".
Имя топика можно указать во входящем параметре topic или задать на вкладке "Общее" поле "Событие".
Для передачи заголовка сообщения во входящих параметрах следует добавить параметр headers с типом "Карта/Map".
Остальные переменные во вкладке "Входные параметры" попадут в тело сообщения.Пример указания входных параметров:

empty

Подписка на топик

Получение сообщения (Receive Task)

empty

На вкладке "Общее" указывается имя топика аналогично как при отправке сообщения.
На вкладке "Ввод, вывод", необходимо в разделе "Выходные параметры" перечислить параметры, которые необходимо получить из тела сообщения. Если параметры не перечислены, то все тело сообщения поместиться в контекст процесса. Пример указания выходных параметров:

Начальное событие (Start Event)

В случае когда необходимо запустить процесс при появлении события в кафке следует использовать кубик "StartEvent" нотации BPMN.

empty

Для кубика необходимо выбрать тип "Message Start Event". Для данного кубика следует указать лишь наименование топика, на который необходимо подписаться. При появлении события в кафке процесс запустится, а атрибуты сообщения (тело и заголовки) поместятся в контекст процесса. Пример указания наименования топика в StartEvent:

Отправка/получение сообщения (Send/Receive Task)

Взаимодействие с kafka можно реализовать с помощью всего одного кубика "Задача отправки и получения сообщения", который объединяет в себе отправку и получение сообщения.

empty

Для этого в левой панели элементов диаграммы необходимо выбрать данный элемент и произвести его настройку. Настройка этого кубика производится точно также как при отправке и получении сообщения - необходимо указать наименования топиков и переменные для отправки/получения.