Модуль симуляций (DES)
Модуль симуляций (DES)
Модуль симуляций позволяет прогонять бизнес-процессы «в цифре» до того, как менять их в жизни. Вы берёте BPMN-диаграмму, задаёте параметры (поток заявок, длительности операций, ресурсы и их расписания, стоимость) — и получаете имитационный прогон процесса методом дискретно-событийного моделирования (Discrete Event Simulation, DES): где копится очередь, какое реальное время цикла, насколько загружены исполнители, сколько стоит один экземпляр процесса.
Что даёт модуль:
- Поиск узких мест — какие операции и ресурсы тормозят процесс и создают очереди;
- Время цикла и SLA — сколько реально занимает прохождение заявки с учётом очередей и расписаний;
- Загрузка ресурсов — кто перегружен, а кто простаивает;
- Экономика процесса — стоимость экземпляра и статей затрат;
- Сценарии «что если» — сравнение вариантов процесса до внедрения изменений.
Отдельная лицензия
Модуль симуляций не входит в базовую поставку StormBPMN Enterprise и лицензируется отдельно — так же, как AI-модуль. Чтобы включить модуль в вашу лицензию, обратитесь к менеджеру, с которым работаете, или напишите через форму на сайте.
AI-разбор результатов
Автоматический разбор отчёта симуляции языковой моделью (выводы и рекомендации по итогам прогона) дополнительно требует AI-модуль лицензии и настроенный AI-ассистент. Сами симуляции работают без него.
Как устроен модуль
Симуляции считает отдельный контейнер storm-des — вычислительный сервис рядом с основным приложением. Он намеренно вынесен из основного контейнера: имитационный прогон — ресурсоёмкая задача, и отдельный сервис не отнимает процессор и память у пользователей приложения, а при необходимости масштабируется независимо.
Интеграция с приложением идёт двумя путями:
- Очередь в базе данных — основное приложение ставит запуск симуляции в очередь (таблица в той же базе PostgreSQL), контейнер
storm-desзабирает задачи из очереди, считает и записывает результат обратно. Никакого отдельного брокера сообщений не нужно. - HTTP внутри периметра — синхронные операции (проверка конфигурации перед запуском, предпросмотр параметров, схемы настроек) основное приложение запрашивает у
storm-desнапрямую по HTTP (порт 8081). Этот порт нужен только основному приложению — наружу его публиковать не нужно и не следует.
Из этого следуют два свойства, важных для эксплуатации:
storm-desподключается к той же базе PostgreSQL, что и основное приложение — отдельная база не нужна, миграций схемы сервис не выполняет (все таблицы создаёт основное приложение);- если поднять несколько контейнеров
storm-des, они будут разбирать общую очередь параллельно — так масштабируется пропускная способность симуляций.
Требования к ресурсам
| Конфигурация | CPU | RAM | Диск | Параллельных симуляций |
|---|---|---|---|---|
| Минимальная | 2 vCPU | 8 GB | 10 GB | 1 |
| Рекомендуемая | 4 vCPU | 16 GB | 20 GB | 2 |
Память — главный ресурс: прогон крупного процесса с длинным горизонтом моделирования держит всю статистику в памяти JVM. Число параллельных прогонов задаётся переменной SIMULATION_MAX_CONCURRENT (по умолчанию 2) — увеличивая его, увеличивайте и память контейнера (ориентир — 6 GB кучи JVM на каждую параллельную симуляцию плюс 2 GB на сам сервис). Диск нужен только под логи и файлы отладки.
Разделы
- Установка и подключение — образ, docker-compose, переменные окружения, подключение к основному приложению, проверка работоспособности.
- Эксплуатация и мониторинг — здоровье сервиса, метрики Prometheus, лимиты и защита от «зависших» симуляций, типовые проблемы и их диагностика.