Функциональность

Больше чем интеграционная шина

Модульная архитектура FESB объединяет сервис-ориентированный (SOA), событийно-ориентированный (EDA) и микросервисный (MSA) подходы в одном продукте.

Интеграционный уровень Обработка, трансформация и маршрутизация сообщений
Интеграционный брокерREST APISOAPВстроенная БД
Транспортный уровень Гарантированная доставка через встроенные менеджеры очередей
Менеджеры очередейРасширенные менеджеры очередей
Мониторинг и управление Полная видимость: от сообщения до состояния серверов
DashboardМониторинг доставки и обработкиЦентрализованное управление серверами
Расширения Готовые модули под задачи заказчика
FESB IAMПАМИРAI АссистентLDAP ServerEnterprise Integration KitБалансировщик и шлюз
Новое в FESB 9

Спутники и FESB Ассистент

На данный момент FESB единственная интеграционная платформа на рынке с таким функционалом: модуль «Спутники» изолирует домены от сбоев, а встроенный FESB Ассистент не только отвечает на вопросы по документации, но и сам разрабатывает интеграции в режиме, подобном TDD: сначала план с критериями проверки, затем реализация, затем прогон и сверка по этим критериям.

Спутники — изоляция без единой точки отказа

Отдельный процесс на каждый ресурс Раньше весь интеграционный брокер, все домены и все СОПС, работал в одном процессе, и утечка памяти в одном домене могла повлиять на весь сервер. Спутник — отдельный процесс, порождаемый основным процессом (Master). В него можно вынести домен брокера, Расширенный менеджер очередей или Координатор.
Автоматическое восстановление Если спутник аварийно завершился, например из-за нехватки памяти, Master поднимает его заново. Остальные домены и весь FESB продолжают работать.
Полная видимость и управление PID, порты, время работы, метрики JVM (heap, metaspace, потоки, сборка мусора) в реальном времени, переданные ресурсы и протокол работы. Домен делегируется спутнику прямо со страницы домена, конфигурация переносится между стендами экспортом и импортом.

FESB Ассистент

Знает документацию и ваш серверОтвечает со ссылками на страницы документации и видит, что происходит на сервере: домены, схемы, ошибки.
Действует с подтверждениемСоздаёт домены, сохраняет схемы, меняет настройки. Сначала показывает, что собирается сделать, после — карточку «было / стало».
Трассировка в чатеКогда речь о конкретном сообщении или ошибке, карточка трассировки появляется прямо в диалоге.
Три режимаОбычный чат для вопросов; режим плана — сначала план и ваше одобрение; режим цели — задача целиком, шаг за шагом.
Гибкие разрешения«Спрашивать разрешения», «Разрешить редактирование» (опасные операции подтверждаются отдельно) или «Разрешить всё».
Агенты, навыки, памятьДочерние агенты работают параллельно, свои сценарии оформляются как навыки ($) и профили (@), есть память между сессиями.
Любая модельВстроенный облачный провайдер или локальная модель: LM Studio, Ollama, любой OpenAI-совместимый сервер без выхода наружу.
Пишет документациюЧитает конфигурацию созданных СОПС и описывает интеграцию: какие очереди участвуют, как устроена обработка ошибок.

Режим TDD: от ТЗ до проверенной интеграции

Прежде чем что-то менять, ассистент фиксирует критерии проверки, а потом сверяет с ними результат, а не полагается на то, что «должно сработать».

1
План с критериями проверки Разбирает ТЗ: какие нужны очереди, схемы приёма и валидации, сценарий для некорректных данных, и для каждого шага — критерий проверки. План можно прочитать и одобрить, до согласия ничего не меняется.
2
Реализация шаг за шагом Создаёт и сохраняет схемы обработки, запускает домен. Если, например, невалидное сообщение не доходит ни до получателя, ни в очередь ошибок, сам находит причину и правит конфигурацию.
3
Прогон и сверка Прогоняет happy-path и сценарий с ошибкой с включённой трассировкой: сообщение прошло весь путь, ID трассировки совпадает на входе и выходе, доставка подтверждена. Потом выключает трассировку.
Пример из реальной задачи

Техническое задание — интеграция приёма заказов с B2B-портала в систему управления заказами: JSON на входе, XML на выходе, свои правила преобразования полей. Ассистент строит план (очереди, две схемы обработки, сценарий ошибок, критерии проверки), после одобрения реализует его, по ходу сам обнаруживает и исправляет потерю невалидных сообщений, затем прогоняет happy-path и сценарий с ошибкой и подтверждает результат трассировкой.

Заодно он заметил, что пример JSON в самом ТЗ был невалиден (не хватало кавычек), и прислал исправленный вариант. А затем в новой вкладке с чистым контекстом сам написал документацию по созданной интеграции.

Интеграция с приложениями

Готовые адаптеры к корпоративным системам и протоколам, совместимость со средствами защиты информации.

ibmmicrosoftsap1capacheoracleredhat
JMS Файлы (s)FTP(s) IoT HTTP(s) HTTP(s) JDBC SSH Почта … F
JMSФайлы(s)FTP(s)IoTHTTP(s)JDBCSSHПочта
Средства защиты информации
cryptoprovalidatakasperskydrweb

Обработка данных

Валидация и трансформацияПроверка входящих данных и специализированные компоненты для трансформации и преобразования форматов.
ОбогащениеВо время обработки можно обратиться к внешним системам и использовать полученные данные.
Логика обработкиВстроенные механизмы описания логики, а при необходимости — языки программирования.
Маршрутизация и балансировкаДинамическая маршрутизация по содержимому сообщения; шину можно использовать как прикладной балансировщик.
Аутентификация и авторизацияРазные варианты хранилища пользователей, в том числе LDAP и MS AD.

СОПС — схема обработки потока сообщений

Интеграционный сценарий собирается из трёх частей: откуда пришло сообщение, что с ним сделать и куда отправить.

Точка входа
Очереди и брокеры
Локальная очередьJMSJMS 2.0IBM MQRabbitMQKafkaПросмотр JMS-очереди
Файлы и хранилища
Локальный файлПотоковая передачаМониторинг файловFTPSFTPFTPSFTP-серверSMBHDFSAWS S3Minio
Веб и API
HTTPREST-сервисы (модуль)SOAP веб-сервисы (модуль)gRPCWebSocket
Почта и мессенджеры
POP3IMAPSMPPTelegramMAX
Базы данных
SQL (JDBC)Локальная БД (H2)Debezium (изменения в PostgreSQL)RedisКэш
Системы и прочее
SAP RFCODataOData4SSHTCP/UDP (Mina)Последовательный портТаймерПланировщикСсылка на СОПСПользовательская точка
Точка обработки
Обработка
ОбогащениеНезависимая отправкаЗаголовки и переменныеТело сообщенияXSLT-трансформацияXSD-валидацияJSON-валидацияКарта преобразованияПреобразование моделиПреобразование форматовПрограммная трансформация (JS, Groovy)Пользовательская обработкаОбработчик и бинКриптографияВложенияГлобальные переменныеКэшЛогированиеPush-уведомленияОткат транзакцииИсключения и остановка
Логика
ФильтрУсловиеЦиклПопытка (try / catch)Проверка на уникальностьСегментацияАгрегацияСписок получателейПотокиБалансировкаSLAКонтроль доступности
Точка выхода
Очереди и брокеры
Локальная очередьJMSJMS 2.0IBM MQRabbitMQKafka
Файлы и хранилища
Локальный файлПотоковая передачаFTPSFTPFTPSSMBHDFSAWS S3MinioРаспределённое хранилище
Веб и API
HTTPREST SwaggerREST OpenAPISOAPGraphQLgRPCWebSocket
Почта и мессенджеры
SMTPSMPPTelegramMAX
Базы данных
SQL (JDBC)Локальная БД (H2)RedisLDAP
Системы и прочее
SAP RFCODataOData4SSHTCP/UDP (Mina)Последовательный портXML в JSONИсполнить командуПринтерТаблица маршрутовСсылка на СОПСПользовательская точка

Форматы и преобразование

Форматы сообщений: стандартный формат, HL7, SWIFT, Type B
Модель данных для JSON, YAML, XML и графическое преобразование в CSV, HTML, BINARY

Надёжность и безопасность

  • Гарантированная и безопасная доставка данных
  • Высокая производительность и максимальная утилизация канала связи
  • Программное шифрование канала связи по ГОСТ для синхронного и асинхронного взаимодействия
  • Работа в ДМЗ: внешний и внутренний сегменты
Безопасный канал с гарантированной доставкой между двумя экземплярами FESB
  • Локальная (в рамках предприятия) или географически распределённая шина с катастрофоустойчивостью
  • Брокер сообщений и менеджер очередей работают в режимах active/active и active/passive независимо от настроек и возможностей ОС
  • Балансировка нагрузки как со стороны клиента, так и внутри кластера
  • Программная синхронизация очередей в синхронном и асинхронном режиме
Балансировка (active/active) и кластеризация (active/passive)

Пример трёхузловой отказоустойчивой и катастрофоустойчивой схемы, штатная работа: в каждом ЦОД активный и пассивный менеджеры очередей с асинхронной репликацией.

Пример трёхузловой катастрофоустойчивой схемы

Открытые технологии

FESB построен на собственных разработках ООО «Неолант Тенакс» и проверенных технологиях с открытым исходным кодом. Весь исходный код и библиотеки при сборке берутся из защищённого внутреннего репозитория, без подключения к интернету. Большая часть из них доработана для стабильности и высокой производительности.

Java Spring Apache HTML 5 React

Посмотреть FESB в работе