Camunda 开源流程引擎 学习笔记(二)——最佳实践

原文链接: Camunda 开源流程引擎 学习笔记(二)——最佳实践

最佳实践

参考:

Camunda官方推荐的最佳架构模式是外部任务模式. 如下图, Camunda引擎作为一个独立的服务, 客户端通过REST接口从流程引擎服务器上拉取任务.
这种模式有点像消息队列的发布/订阅模式, Camunda服务发布任务, 客户端(Job worker)订阅相关任务,定期拉取任务,执行后反馈执行结果.和消息队列相比, Camunda流程编排的能力更强大些, 事实上, 如果是单纯的线性任务, 使用工作流引擎反而增加了复杂性.
使用外部任务具有以下优点:

  • 时间解耦:该模式可以替换服务任务(“消费者”)和服务实现(“提供者”)之间的消息队列。它可以消除对操作专用消息总线的需要,同时保持消息传递将提供的解耦。
  • 多语言架构:该模式可用于集成基于 .NET 的服务,例如,当编写 Java 委托来调用它们可能不是那么容易时。可以使用任何可用于与 REST API 交互的语言来实现服务。
  • 更好的扩展性:该模式允许您根据需要启动和停止工作人员,并根据需要运行尽可能多的工作人员。通过这样做,您可以单独扩展每个服务任务(或者准确地说,每个“主题”)。
  • 连接云和本地:该模式支持您在云中的某个地方运行 Camunda(就像我们的客户经常做的那样),因为您仍然可以在本地拥有服务,因为他们现在可以通过 SSL 上的 REST 查询他们的工作,这是对防火墙也很友好。
  • 避免超时:该模式允许您异步调用长时间运行的服务,这些服务最终会阻塞数小时(因此在同步调用时会导致事务和连接超时)。
  • 在专用硬件上运行服务:每个工作人员都可以在最适合该工作人员特定任务的环境中运行;例如,用于复杂图像处理的 CPU 优化云实例和用于其他任务的内存优化实例。



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值