前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >2024年11月学习心得:(工作流程引擎 Comunda、任务调度系统 AirFlow 、马斯克传)

2024年11月学习心得:(工作流程引擎 Comunda、任务调度系统 AirFlow 、马斯克传)

作者头像
勇哥java实战
发布2024-12-05 14:00:55
发布2024-12-05 14:00:55
1230
举报
文章被收录于专栏:勇哥编程游记勇哥编程游记

大家好,我是勇哥,和大家分享最近一个月的学习心得,希望对大家有所启发。

1 工作流程引擎 Comunda 初体验

工作流(Workflow),是对工作流程及其各操作步骤之间业务规则的抽象、概括描述。工作流可以将一套大的业务逻辑分解成业务逻辑段, 并统一控制这些业务逻辑段的执行条件,执行顺序以及相互通信,实现业务逻辑的分解和解耦。

企业日常的管理中,经常会有出差申请、加班申请、请假申请等流程。如果用人工的方式管理这些流程,效率低,管理成本高。因此为了提高效率,我们需要使用到工作流开发。

Camunda 是一个轻量级的商业流程开源平台,基于 Java 框架,它可以内嵌集成到 Java 应用和 Spring Boot 应用中,也可以独立运行。Camunda 包含三个重要的特性:

  • 支持 BPMN 用于工作流和过程自动化
  • 支持 CMMN 用于案例管理
  • 支持 DMN 用于业务决策管理

笔者通过 Camunda Modeler (建模工具) 画了第一个工作流图:

该工作流主要用于判断合同是否满足相关条件,若满足,则会收到消息进行消费。

BPMN 文件中 包含了一个决策表文件 DMN ,见下图:

接下来,部署 Camunda Platform(独立的服务 )。

然后通过 建模工具 将工作流文件(BPMN)以及决策表文件(DMN) 上传到 Camunda 平台 。

Camunda 平台提供了多个接口,任务程序会调用 Camunda 平台的启动实例接口 ,触发工作流,当合同满足要求后,在监听程序里,实现自定义逻辑。

2 任务调度系统 AirFlow

Airflow 是一个可编程,调度和监控的工作流平台,基于有向无环图(DAG),Airflow 可以定义一组有依赖的任务,按照依赖依次执行。

笔者使用 AirFlow 将 MySQL 数据同步到 ElasticSearch ,大体设计类似:

一个简单的 DAG 代码模版如下图:

3 马斯克传

五天时间囫囵吞枣般读完了这本书,就像看一部科幻短剧。

男主角有一个非常不快乐的童年,但他对世界充满了好奇心和探索欲,他敏锐的发现,真正影响人类社会的东西只有三个,“互联网、可持续能源和太空旅行”。

他将其视为使命而不是逐利的工具,偏执的追逐自己的使命,而 PayPal、 SpaceX 、特斯拉真正做到了改变了世界。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-12-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 勇哥java实战分享 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 工作流程引擎 Comunda 初体验
  • 2 任务调度系统 AirFlow
  • 3 马斯克传
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档