1. 程式人生 > 其它 >實戰筆記 -- 分散式排程&工作流引擎

實戰筆記 -- 分散式排程&工作流引擎

一、分散式排程

spring-schedler+分散式鎖: https://spring.io/guides/gs/scheduling-tasks/

quartz: http://www.quartz-scheduler.org/

xxl-job: https://www.xuxueli.com/xxl-job/

* xxl-job架構&實現:

- xxl-job定義了兩個介面ExecutorBiz,AdminBiz: ExecutorBiz(Scheduler(呼叫者) -> Executor(實現方)):  介面中封裝了心跳,暫停,觸發執行等操作; AdminBiz(Executor(呼叫方) -> Scheduler(實現方)):  封裝了回撥,註冊,取消註冊操作; 介面的實現類中,並沒有通訊相關的處理。XxlRpcReferenceBean類的getObject()方法會生成一個代理類,這個代理類會進行遠端通訊。 - 排程實現解析

 - 排程核心: 時間片(5s讀取) + 時間輪(每秒任務環)

二、工作流引擎

activiti: https://github.com/Activiti/Activiti

* 非動態編輯流程引擎開發實現: activiti + camunda-modeler

* activiti例項與元件詳解

https://blog.csdn.net/babylovewei/category_8446375.html

* activiti流程製作外掛camunda-modeler

https://blog.csdn.net/qq_40109075/article/details/113185917