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

Модуль симуляций (DES)

Около 2 мин

Модуль симуляций (DES)

Модуль симуляций позволяет прогонять бизнес-процессы «в цифре» до того, как менять их в жизни. Вы берёте BPMN-диаграмму, задаёте параметры (поток заявок, длительности операций, ресурсы и их расписания, стоимость) — и получаете имитационный прогон процесса методом дискретно-событийного моделирования (Discrete Event Simulation, DES): где копится очередь, какое реальное время цикла, насколько загружены исполнители, сколько стоит один экземпляр процесса.

Что даёт модуль:

  • Поиск узких мест — какие операции и ресурсы тормозят процесс и создают очереди;
  • Время цикла и SLA — сколько реально занимает прохождение заявки с учётом очередей и расписаний;
  • Загрузка ресурсов — кто перегружен, а кто простаивает;
  • Экономика процесса — стоимость экземпляра и статей затрат;
  • Сценарии «что если» — сравнение вариантов процесса до внедрения изменений.

Отдельная лицензия

Модуль симуляций не входит в базовую поставку StormBPMN Enterprise и лицензируется отдельно — так же, как AI-модуль. Чтобы включить модуль в вашу лицензию, обратитесь к менеджеру, с которым работаете, или напишите через форму на сайтеopen in new window.

AI-разбор результатов

Автоматический разбор отчёта симуляции языковой моделью (выводы и рекомендации по итогам прогона) дополнительно требует AI-модуль лицензии и настроенный AI-ассистент. Сами симуляции работают без него.

Как устроен модуль

Симуляции считает отдельный контейнер storm-des — вычислительный сервис рядом с основным приложением. Он намеренно вынесен из основного контейнера: имитационный прогон — ресурсоёмкая задача, и отдельный сервис не отнимает процессор и память у пользователей приложения, а при необходимости масштабируется независимо.

Интеграция с приложением идёт двумя путями:

  1. Очередь в базе данных — основное приложение ставит запуск симуляции в очередь (таблица в той же базе PostgreSQL), контейнер storm-des забирает задачи из очереди, считает и записывает результат обратно. Никакого отдельного брокера сообщений не нужно.
  2. HTTP внутри периметра — синхронные операции (проверка конфигурации перед запуском, предпросмотр параметров, схемы настроек) основное приложение запрашивает у storm-des напрямую по HTTP (порт 8081). Этот порт нужен только основному приложению — наружу его публиковать не нужно и не следует.

Из этого следуют два свойства, важных для эксплуатации:

  • storm-des подключается к той же базе PostgreSQL, что и основное приложение — отдельная база не нужна, миграций схемы сервис не выполняет (все таблицы создаёт основное приложение);
  • если поднять несколько контейнеров storm-des, они будут разбирать общую очередь параллельно — так масштабируется пропускная способность симуляций.

Требования к ресурсам

КонфигурацияCPURAMДискПараллельных симуляций
Минимальная2 vCPU8 GB10 GB1
Рекомендуемая4 vCPU16 GB20 GB2

Память — главный ресурс: прогон крупного процесса с длинным горизонтом моделирования держит всю статистику в памяти JVM. Число параллельных прогонов задаётся переменной SIMULATION_MAX_CONCURRENT (по умолчанию 2) — увеличивая его, увеличивайте и память контейнера (ориентир — 6 GB кучи JVM на каждую параллельную симуляцию плюс 2 GB на сам сервис). Диск нужен только под логи и файлы отладки.

Разделы

  1. Установка и подключение — образ, docker-compose, переменные окружения, подключение к основному приложению, проверка работоспособности.
  2. Эксплуатация и мониторинг — здоровье сервиса, метрики Prometheus, лимиты и защита от «зависших» симуляций, типовые проблемы и их диагностика.