Демонстрационный проект с BPMN движком Camunda
Представлен сам BPMN движок с mock сервисами, отдельный микросервис account-service и webui для демонстрации.
Функционал - преобразование валют путем снятия денег с одного счета и пополнение другого счета пользователя. Транзакции объединены в распределенную с Saga в BPMN процессе.
- Запустить Docker engine
- Запустить bpmn-engine (Spring boot run configuration) с профилем
localи working directory./bpmn-engine - Запустить account-service (Spring boot run configuration) с профилем
localи working directory./account-service - Выполнить
npm installв директории./demo-webui - Выполнить
npm generate:api-account-serviceв директории./demo-webui - Выполнить
npm generate:api-bpmn-engineв директории./demo-webui - Выполнить
npm startв директории./demo-webui
Все окружение будет запущено автоматически в Docker
- Для использования excamad (локально) перейти по ссылке
- В settings ввести в поле "URL Camunda Engine REST" http://localhost:8080/engine-rest
- Нажать save
Есть множество способов деплоить диаграммы в Camunda. Приведены 2 способа: через Camunda modeler и автодеплой в spring приложении
- Открыть одну из диаграмм из директории bpmn
- Нажать кнопку "Deploy current diagram" в нижней панели программы
- Ввести REST endpoint. В случае локальной разработки это http://localhost:8080/engine-rest
- Нажать "Deploy"
- Расположить диаграмму в директории bpmn в ресурсах приложения
- Запустить приложение
- В директории c4 находится docker-compose с structurizr и dsl кодом диаграмм
- Для запуска нужно выполнить
docker compose -f ./c4/docker-compose-structurizr.yml up - Код диаграмм


