Преимущества
Рассчитана под высокие нагрузки – более 300 сообщений в секунду
Визуализация интеграций в нотации BPMN 2.0
Готовый набор часто используемых интеграций с различными государственными органами
Быстрая разработка типовых интеграций (2-5 дней) за счет собственного low-code решения
Собственные средства мониторинга интеграционных процессов и сбора статистики
Собственная разработка для интеграции с системой межведомственного взаимодействия
Возможности интеграционной платформы
Интеграционная платформа ориентирована на конструирование интеграционных процессов, развёртывание их на масштабируемом кластере и исполнение под высокой нагрузкой.
Совмещает BPMN- редактор для конструирования процессов и хореографию на основе событийно-ориентированной архитектуры на базе Apache Kafka.
Предназначена для высоконагруженных систем (от 30-40 сообщений в секунду внутри системы) государственных ведомств и предприятий бизнес-сегмента.
Производительность
>300 сообщений/сек. внутри системы
>1 млрд процессов/год
Сроки внедрения
5-7 дней – типовая интеграция
3-4 недели – уникальная интеграция, с разработкой под специфику Заказчика
1. Интеграция с системой межведомственного взаимодействия (СМЭВ):
- собственная разработка для взаимодействия со СМЭВ;
- набор готовых типовых интеграций с государственными органами – Пенсионный фонд РФ, Федеральная налоговая служба, Органы записи актов гражданского состояния, Единый портал государственных услуг РФ, Почта России, Федеральное казначейство.
2. Взаимодействие с пользователями напрямую:
- e-mail-адаптер;
- sms-адаптер.
3. Обеспечение механизма бесшовной интеграции с внутренними системами Заказчика:
- Apache Kafka;
- SOAP;
- REST.
4. Интеграция с продуктами ГК ОТР:
5. Интеграция с любыми системами по требованию Заказчика
Ключевые особенности
1. Мультиарендность
Один сервис реализует шаги из разных процессов, что существенно уменьшает потребности в ресурсах на развертывание.
2. Отсутствие единой точки отказа. Микросервисная архитектура
Использование брокера и системы распределённого ведения журналов Apache Kafka в качестве единственного центрального совместно используемого элемента системы.
3. Использование для моделирования бизнес-процессов международного стандарта BPMN 2.0
Прозрачность и унификация в описании процессов компании.
4. Параллелизм и масштабирование
Каждый сервис масштабируется в пределах количества партиций обслуживаемых топиков.
5. Шаблонизация сервисов
Каждый сервис имеет единое runtime-ядро и стандартный интерфейс бизнес-логики, что позволяет значительно ускорить разработку новых микросервисов.
6. Apache Kafka как база данных
Использование единого транзакционного механизма. Все служебные и временные данные хранятся только в Apache Kafka: взаимодействие между мироксервисами происходит через retention-топики, а состояния хранятся в compacted-топиках (таймеры, параллельные шлюзы, сессионная база данных адаптеров и пр.). Для работы с данными в топиках используются Consumer API и Kafka Stream API.
7. Развитые средства мониторинга
Журналирование всех шагов процесса при прохождении сообщения, сбор метрик и вывод информации на понятный интерфейс. Организация ремонтных очередей.
Используется только открытое ПО
Backend: Java, Kotlin, Spring Boot
Frontend: JavaScript, Angular
Хранение: PostgreSQL, MinIO S3, Apache Kafka
Контейнеризация: Docker, Kubernetes, Openshift
Сбор метрик: Prometheus, Grafana
1. Изучаем бизнес-процессы компании Заказчика – интервью и анализ информационных систем и документации.
2. Формализируем требования на интеграцию. Формируем список интеграций, необходимых для автоматизации деятельности Заказчика. Готовим документацию на интеграции и микросервисы, входящие в состав интеграции.
3. Разрабатываем интеграции в нотации BPMN 2.0. Составляем диаграммы в редакторе, настраиваем элементов диаграммы для дальнейшего формирования настроек интеграции при исполнении процесса.
4. Определяем необходимость разработки с нуля или доработки существующего микросервиса:
- Если интеграцию возможно реализовать на основе уже существующих микросервисов, то разработка кода не требуется. Общий срок разработки интеграции в таком случае составляет 2-5 дней;
- Если интеграцию невозможно реализовать существующим набором микросервисов, необходимо разработать новый микросервис, либо доработать один из существующих. Общий срок разработки интеграции в таком случае составляет около 3 недель.
5. Тестируем интеграцию. Проводим ручное тестирование и покрытие автоматизированными тестами интеграции. Проводим стресс- и нагрузочное тестирование.
6. Схема становится исполняемой: все элементы на схеме начинают процесс обработки сообщений в заданной последовательности.
7. Поставляем готовую интеграцию и документацию на нее Заказчику. Формируем образы контейнеров с конфигурациями для запуска в Kubernetes в среде Заказчика.
