问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

jBPM的介绍

创作时间:
作者:
@小白创作中心

jBPM的介绍

引用
CSDN
1.
https://blog.csdn.net/m0_64269294/article/details/138049553

一、简介

jBPM(Java Business Process Management)是一个开源的业务流程管理框架,用于管理和执行业务流程。它提供了一个可视化的流程设计器,可以创建、模拟和部署业务流程,并提供了灵活的流程执行引擎。

jBPM可以帮助开发人员和业务分析师更好地管理和优化业务流程。它提供了以下功能和作用:

  1. 流程建模:jBPM提供了一个可视化的流程设计器,使开发人员和业务分析师能够创建和修改业务流程。它支持多种流程模型,如BPMN(Business Process Model and Notation)和规则流程。

  2. 流程执行:jBPM的流程引擎可以执行已定义的业务流程。它包括流程实例管理、任务分配、流程状态管理等功能。开发人员可以使用jBPM的API来管理和控制流程的执行。

  3. 任务管理:jBPM提供了任务管理功能,可以创建、分配和跟踪任务。它支持任务的优先级、截止日期、委派和转派等功能,以便更好地管理任务的执行。

  4. 规则引擎:jBPM集成了Drools规则引擎,可以将规则与业务流程相结合。开发人员可以使用规则引擎来定义和执行业务规则,从而实现更灵活的业务流程。

  5. 监控和优化:jBPM提供了监控和优化业务流程的功能。它可以记录流程的执行情况、性能指标和错误信息,并提供可视化的报表和分析工具,以便用户能够优化业务流程的效率和质量.

jBPM和flowable都是工作流引擎,还有Activiti、Bonita 、Airflow等工作流引擎

二、应用部署

应用程序部署有两种方式:单机模式(standalone mode)和开发模式(development mode)。单机模式没有额外的配置和依赖要求,直接本地启动即可(可借助于 spring boot+tomcat,或者使用 jboss 服务器),而开发模式需要 Business Central 作为 jBPM Controller,开发模式意味着允许用户在不需要重启服务的情况下,进行处理业务资产项目,并动态地将更改部署到业务应用程序。同时,它提供了对业务自动化功能(流程实例、任务、作业等)的完整监视环境。

启动方式一:单机模式(standalone mode)
参考 csdn 代码示例中 spring-boot-jbpm 子工程,csdn地址:https://download.csdn.net/download/zhuqiuhui/87452118

启动方式二:开发模式(development mode, 或托管模式 managed mode)
开发模式需要启动 jBPM-server,这里重点讲示例应用程序模板 business-application 怎么结合 Business Central 使用。

jbpm-server/bin/standalone.sh     (Unix / Linux)
jbpm-server/bin/standalone.bat    (Windows)
  • Step 2:访问并登录 Business Central(以账号示例:wbadmin/wbadmin),地址:http://localhost:8080/business-central

  • Step 3:以开发模式启动应用程序模板 business-application 工程中 business-application-service 模块

    ./launch-dev.bat clean install 
    
  • Step 4:在 Business Central 系统上新增 project 并导入资产工程 business-application-jar

  • (1)进行到 business-application-jar 目录下,进行 git 工程初始化,命令如下:

  • git init
    git add -A
    git commit -m "my business assets project"
    

    (2)在 Business Central 系统上导入 project

Step 5:将资产文件deploy 导入到 business-application-service Dev 服务中

Step 6:在 Business Central 系统中 Manage 模块进行流程实例运行,并在 Track 模块中进行查看报告

三、jBPM 整体架构

图来自 jBPM 官方文档,

Execution
Core Engine:是 jBPM 整个项目的核心,支撑着整个工作流的顺利执行,可作为项目的一部分嵌入到项目中,也可被当作一个单独的服务进行独立部署,然后通过基于网页的方式或者远程调用接口的方式进行通讯连接。

Human Task Service:用于有人工参与的流程任务中

Persistence:流程实例运行时,可以持久化流程状态和历史日志信息

CDI、REST 和 JMS:应用程序在运行时连接 Core Engine 可通过 Java API、CDI 服务、REST API 或者 JMS API 方式

Modeling & Deployment
Process Designer:设计者可基于 web 环境设计和模拟业务流程

Data Modeler:允许非技术人员创建、查看和修改流程中的数据模型

Rule Authoring:允许在工作流中指定或者创建不同的业务规则组合,比如 decision tables、 guided rules等

Form Modeler:允许创建、生成或者编辑流程中的表格

Guvnor Repository:所有的资产通过 Guvnor 仓库存储和管理,同时可以进行版本控制、构建和部署

Eclipse Developer Tools:基于Eclipse的开发者工具是Eclipse IDE的一种拓展,目的是为了让开发者能够通过简单的拖拽的方式构建自己的工作流,测试自己的工作流和debug自己的工作流等

Runtime Management & Reporting
基于 web 的管理控制台允许使用者对流程进行操作,比如开始或者运行某个流程实例,也可以查看流程实例中的的任务列表、监控状态和监控报告。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号