1、引擎嵌入用法
将camunda引擎与业务系统整合到一起,适合java单体小型项目,流程引擎的生命周期与应用程序相同,可以使用引擎的所有内部API直接调用。
优点:使用方便,不用单独部署和维护。
缺点:与业务深度耦合,不方便扩容,只能本项目使用。
接下来的技术点讲解采用此用法。
2、组件式用法
组件式用法流程引擎在运行时容器(Servlet容器、应用程序服务器……)中启动。流程引擎作为容器服务提供,可以由部署在容器内的所有应用程序共享。这个概念可以与运行时提供的JMS消息队列进行比较,它可以被所有应用程序使用。流程部署和应用程序之间存在一对一的映射:流程引擎跟踪由应用程序部署的流程定义,并将执行委托给相关应用程序。
不常用
3、中间件用法
将流程引擎单独部署成平台模式,是一种单实例SAAS模式,支持多项目共用,最常用的是通过Rest api方式来通信。前面快速入门用的就是此种用法。
优点:与业务完全解耦,方便扩容,同时支持多项目,支持多租户用法;
缺点:存在单点风险,远程