Разница между автономным использованием Camunda и его интеграцией в Java-приложение заключается в способе работы с движком. bpmn2.ru
Автономное использование (Standalone-сервер) предполагает запуск отдельного приложения Camunda, в которое загружаются процессные приложения в виде war-файлов. bpmn2.ru В этом случае Camunda выступает в роли отдельно стоящего сервиса (или кластера сервисов), взаимодействие с которым происходит через сеть, посредством REST API. reunico.com
Интеграция в Java-приложение (Embedded-вариант) подразумевает использование Camunda как библиотеки внутри Java-приложения. bpmn2.ru В этом случае указываются зависимости в приложении и работа с Camunda происходит через Java API. bpmn2.ru
Некоторые преимущества автономного использования:
- Слабая связанность. habr.com BPM-движок развёртывается и настраивается независимо от приложения и процессного решения. habr.com Проблемы можно легко локализовать в одном из компонентов, а уязвимости не распространяются на другие компоненты. habr.com
- Улучшенное масштабирование. habr.com BPM-движок может масштабироваться независимо от кода приложения. habr.com
- Проще начать работу. habr.com Можно развернуть движок с помощью простой команды Docker и не нужно углубляться в конфигурации собственного приложения. habr.com
Некоторые преимущества интеграции в Java-приложение:
- Общий жизненный цикл. reunico.com BPM-движок и приложение будут иметь общий жизненный цикл — можно выкатывать одним релизом все обновления (сервисы, Camunda, описания процессов, делегатный код). reunico.com
- Возможность организовать хореографию сервисов. reunico.com При использовании микросервисной архитектуры встроенная в микросервис Camunda позволяет организовать взаимодействие сервисов. reunico.com