作业执行器
作业执行器(Job Executor) 是在流程引擎中管理和执行异步作业的关键组件。 能处理需要在主程流之外执行的作业,例如定时器、异步延续和其他后台流程等。 通过分担主流程的这些任务,作业执行器可以确保主执行线程能保持响应和高效。
作业执行器在多线程环境中运行,可以同时处理多个作业。 从数据库中获取作业,然后执行并更新作业状态。 此机制对于在业务流程中实现延迟任务和计划事件等功能至关重要。
总体而言,作业执行器能高效管理后台作业并确保流程顺利执行, 增强了流程引擎的性能和可扩展性。
作业类型
作业执行器管理的任务主要有两种类型:
-
定时器作业:这些作业在特定时间触发, 通常与 BPMN 模型中的边界事件关联。
-
异步作业:在任务带
flowable:async="true"
属性时创建, 表示需要异步执行。
执行过程
-
当流程实例达到需要异步作业或定时器的位置时, 作业执行器将相应的条目插入到
ACT_RU_JOB
表中。 -
对于定时器作业,有一个线程会定期检查到期的作业并触发这些作业。
-
对于异步作业,一旦创建作业的 API 调用成功后, 事务监听器就会激活作业执行器去执行新建的作业。
本页是否有帮助?
感谢您的反馈