NTA Kafka связывает BPMSoft и Apache Kafka без отдельного интеграционного кода: аналитик настраивает объект, тему, сопоставление полей и JSON-схему в интерфейсе BPMSoft. Базовый обмен типового объекта можно настроить примерно за пять минут.
What the module closes
Интеграция BPMSoft и Apache Kafka без кода
NTA Kafka связывает BPMSoft с Apache Kafka в обоих направлениях. Базовую интеграцию полностью настраивает аналитик в привычном интерфейсе BPMSoft: выбирает объект, тему Kafka, поля и JSON-схему, а затем добавляет готовые действия в бизнес-процесс. Писать, собирать или сопровождать отдельный интеграционный код не требуется.
Первый рабочий обмен типового объекта, например «Контакта», можно настроить примерно за пять минут: выбрать объект и тему Kafka, задать поля и ключ, указать JSON-схему, добавить готовое действие в процесс и проверить журнал. Оценка относится к базовой конфигурации при уже доступном брокере Kafka и согласованном формате данных; подготовка сети, доступа и нестандартной бизнес-логики выполняется отдельно.
Решение подходит для обмена мастер-данными и событийной интеграции: передавать изменения из BPMSoft во внешние системы и получать обновления обратно, сохраняя историю обработки в журнале сообщений.
Что получает команда
- Настройка без кода. Для каждого объекта аналитик выбирает схему BPMSoft, задаёт направление, тему Kafka, ключевое поле и соответствие JSON-атрибутов в интерфейсе, без разработки отдельного сервиса.
- Двунаправленный обмен. Отправляйте события из BPMSoft в Kafka и принимайте сообщения из Kafka для создания или обновления записей в BPMSoft.
- Сложное сопоставление полей в интерфейсе. Поля выбираются из каталога, в том числе из связанных объектов; для исходящего формата данных доступны вложенные объекты, массивы деталей и визуальные фильтры.
- Управляемый формат данных. Сообщения проверяются по JSON-схеме до обработки. Это помогает обнаружить несовместимое тело сообщения до изменения данных в системе.
- Готовые действия процессов. Добавляйте в бизнес-процессы действие «Отправить сообщение в Кафку» и действие запуска чтения сообщений без написания транспортного кода.
- Контроль результата. Журнал сообщений показывает направление, тему Kafka, объект, операцию, статус, ошибку и исходное тело обработанного сообщения.
- Подтверждённая работа на .NET 8. Пакет собран для
net8.0и проверен на BPMSoft 1.8 под Linux.
Kafka как платформа обмена
Когда BPMSoft обменивается данными только с одной системой, прямая интеграция кажется простым решением. Но затем появляются сайт, личный кабинет, учётная система, служба доставки, аналитика, колл-центр и партнёрские сервисы. Для каждого из них приходится создавать отдельную связь, согласовывать формат, писать и тестировать код, поддерживать повторные отправки и разбирать ошибки.
Apache Kafka хранит поток событий и позволяет нескольким получателям читать его в собственном темпе. BPMSoft передаёт изменение в тему Kafka один раз, а остальные системы подписываются только на нужные события. Новый получатель подключается к теме без вмешательства в уже работающие процессы.
Kafka сохраняет опубликованные сообщения на настраиваемый срок. Если получатель был остановлен на обновление, после запуска он может продолжить обработку с нужного места. Для критичных сценариев заранее определяют ключ события, правила идемпотентной обработки, ответственность за ошибку и порядок восстановления.
Типовые сценарии
| Сценарий | Как помогает NTA Kafka |
|---|---|
| Синхронизация контактов, контрагентов и других мастер-данных | Публикует изменения BPMSoft в тему Kafka и применяет входящие insert и update по ключевому полю. |
| Событийная интеграция с внешними сервисами | Передаёт события из бизнес-процесса в согласованный формат JSON для Kafka. |
| Подключение нескольких потребителей к данным BPMSoft | Каждый потребитель получает данные из своей темы Kafka, не меняя процессы BPMSoft. |
| Контроль интеграционных инцидентов | Позволяет быстро найти конкретное сообщение, увидеть статус обработки и тело сообщения для диагностики. |
Как аналитик настраивает обмен
- В разделе «Объекты интеграции» создаёт объект, выбирает схему BPMSoft и задаёт поля, которые участвуют в обмене.
- Для направлений
BPMSoft → KafkaиKafka → BPMSoftнастраивает темы Kafka и сопоставление JSON-полей. - Добавляет в бизнес-процесс действие отправки либо чтения сообщений.
- Для входящих данных задаёт JSON-схему и ключевое сопоставление для поиска записи.
- Проверяет результат в «Журнале сообщений» по направлению, операции и статусу обработки.
Требования и границы применения
- Нужны BPMSoft 1.8 и среда выполнения .NET 8.
- BPMSoft должен иметь сетевой доступ к Kafka-совместимому брокеру.
- До настройки нужны сервер начальной загрузки, группа потребителей, тайм-ауты чтения, режим аутентификации и согласованная JSON-схема для каждого объекта.
- Для входящего обмена используются поля корневого объекта; составные пути ESQ для записи не поддерживаются.
- Подтверждённые входящие сценарии —
insertиupdateдля корневых свойств. Входящийdeleteв текущую поставку не входит. - Значения входящего сообщения должны соответствовать JSON-схеме: например, значение
nullне пройдёт проверку для поля типаstring.
Следующий шаг
Подготовьте перечень объектов BPMSoft, тем Kafka, правила доступа к брокеру и JSON-схемы обмена. На демонстрации можно проверить базовый сценарий на объекте «Контакт» и согласовать требования к нестандартным преобразованиям.
«NTA Kafka связывает BPMSoft и Apache Kafka без отдельного интеграционного кода: аналитик настраивает объект, тему, сопоставление полей и JSON-схему в интерфейсе BPMSoft.»
When it fits
It fits when a scenario from the “интеграции” category needs to be closed quickly, without a full implementation project or rewriting the core environment. It works as a standalone extension or together with BPMSoft Конструктор.
If there is no exact match in the catalog, we build it to spec on the same stack: one contract, one team, direct access to engineers and the project architect.
What the team gets
Ready functionality out of the box with room for industry adaptation. Delivered with documentation, procedures, usage scenarios and release support. Connected through targeted integrations without shadow ETL or replacing product forms.