Перейти к основному содержимому

Настройка BPMN-элемента Platform Kafka Start Event

После добавления BPMN-элемента на схему бизнес-процесса вам нужно настроить параметры этого BPMN-элемента.

подсказка

Вы можете ввести имя BPMN-элемента, дважды нажав мышью на этом элементе.

BPMN-элемент Platform Kafka Start Event может быть только первым элементом на BPMN-схеме.

Чтобы настроить параметры BPMN-элемента Platform Kafka Start Event:

  1. На BPMN-схеме выберите элемент Platform Kafka Start Event.

  2. На панели справа укажите следующие параметры BPMN-элемента:

    • Kafka settingsTopic (обязательный параметр): введите имя топика Kafka, например, SomeTopic.

    • Kafka settingsConsumer Group Id (обязательный параметр): введите идентификатор группы потребителей, работающих совместно для чтения сообщений из одного или нескольких топиков Kafka. Объединение потребителей в группы позволяет распределять нагрузку между потребителями, обеспечивая обработку каждого сообщения только одним потребителем в группе. В качестве значения этого параметра вы можете ввести, например, consumerGroupId.

    • Kafka settingsMessage type (обязательный параметр): из раскрывающегося списка выберите формат сообщения Kafka:

      • Raw json: выберите это значение, чтобы получать необработанные данные в формате JSON.
      • Storage event: выберите это значение, чтобы отслеживать изменения в классах модели данных с включенным параметром Формировать события Kafka. Данные в формате JSON имеют следующую структуру, которую использует сервис доступа к хранилищу данных storagedata:
       "mutation": //формат для событий Kafka и для сервиса управления событиями Платформы
      {
      "operation":"enum", // тип операции с данными класса: "insert","update","delete"
      "projectName":"string", // имя проекта
      "className": "string", // имя класса
      "idType":"enum", // тип идентификатора: "int", "guid"
      "idValue":"string"// сериализация в integer или guid в зависимости от idType
      }
    • Kafka settingsActivation condition (необязательный параметр): введите условие, при котором должен активироваться процесс. Вы можете использовать выражение на языке FEEL для описания значения этого параметра. Следующий блок кода демонстрирует пример описания этого параметра.

      {
      "key": {}// ключ сообщения Kafka
      "value": {}// текст сообщения Kafka
      }
    • Output mappingResult expression (обязательный параметр): введите выражение на языке FEEL для описания способа преобразования и сохранения данных сообщения Kafka в переменных бизнес-процесса. Например, введите следующее выражение:

        {bpmnProcessId: response.processes.bpmnProcessId}
    • Output mappingResult variable (необязательный параметр): введите имя переменной, в которую будет записано сообщение Kafka. Следующий блок кода демонстрирует пример описания этого параметра.

      {
      "Name":("Mr."+value.name),
      "Age":(value.age + 1)
      }
    • Extended settingsSend correlation key (необязательный параметр): по умолчанию для этого параметра установлено значение Dont send correlation key. Если вы хотите связывать сообщения издателя и потребителя и отслеживать обработку сообщений в асинхронных системах, выберите значение Send correlation key. Например, вы можете использовать этот параметр для связывания событий с пользователями в системах мониторинга, для отслеживания взаимодействий между микросервисами.

      Если для этого параметра вы выбрали значение Send correlation key, укажите значение параметра Correlation key, например, correlationKeyExpression.

    • Extended settingsUse default kafka server (необязательный параметр): по умолчанию для этого параметра установлено значение False, что указывает на необходимость ввода URL-адреса сервера Kafka для параметра Kafka server url. Если вы выберите значение True, будет использоваться URL-адрес сервера Kafka, который настроен в Платформе по умолчанию.

    • Extended settingsUse extended kafka settings: по умолчанию для этого параметра установлено значение False, что означает, что для взаимодействия процесса с Apache Kafka будут использоваться параметры по умолчанию. Если вы хотите указать другие значения параметров, выберите значение True и укажите следующие расширенные параметры:

      • Use kafka offsets (обязательный параметр): по умолчанию для этого параметра установлено значение False, что означает, что обработанные потребителем сообщения не будут отслеживаться. Если вы хотите отслеживать обработанные потребителем сообщения, выберите значение True и укажите следующие дополнительные параметры:

        • Kafka offsets (необязательный параметр): укажите числовые метки, которые указывают позицию сообщения в топике Kafka, для отслеживания обработанных сообщений потребителем. При перезапуске процесса этот параметр позволяет продолжить выполнение процесса с позиции, в котором процесс был прерван.
        • Kafka Partition Number (необязательный параметр): укажите номер партиции данных внутри топика Kafka для параллельной обработки и масштабирования. Каждая партиция содержит упорядоченный набор сообщений с позициями и обрабатывается независимо от других партиций. Нумерация партиций начинается с 0, что является значением этого параметра по умолчанию.
      • Auto offset reset (необязательный параметр): выберите, с какой позиции потребитель Kafka должен начинать чтение при отсутствии сохраненной позиции, например, при первом запуске процесса. По умолчанию выбрано значение Latest, что означает чтение с конца топика Kafka только новых сообщений, поступивших после запуска процесса. Это значение используется для контроля поведения потребителя в Apache Kafka.

        Если вы выберете значение Earliest, потребитель Kafka будет читать сообщения с начала, с позиции с числовой меткой 0.

      • Kafka additional Properties (необязательный параметр): укажите дополнительные параметры для настройки взаимодействия с Kafka с целью обеспечения гибкости и контроля инициализации процесса на основе сообщений Kafka. Параметры указываются в виде пары "ключ - значение". Например, для управления параметрами Kafka вы можете указать следующие значения:

        • сериализатор ключа: "key.serializer":"org.apache.kafka.common.serialization.StringSerializer";
        • десериализатор значения: "value.deserializer":"org.apache.kafka.common.serialization.StringDeserializer";
        • протокол безопасности: "security.protocol":"SSL".
  3. Вверху справа нажмите Сохранить.