我想使用Camunda DMN和BPMN创建一个基于规则的自动化系统。我希望这个系统建立在这些基本原则上:
a)让业务事件流经Kafka b)让独立的服务检查每个事件的数据c)根据Camunda DMN中编码的一个或多个规则评估每个事件的数据d)基于DMN规则评估的结果执行Camunda BPMN工作流
示例: a) Kafka主题包含来自请求购买某些物品的外部客户的消息b)独立服务检查每条消息并对照DMN规则对其进行评估,DMN规则要求每个请求包含所请求的物品的数量c) Camunda任务检查每条消息的“请求物品数量”字段d)如果“请求物品数量”字段不包含有效值,则执行相应的Camunda“从客户请求所需物品数量”BPMN工作流e)“从客户请求所需物品数量”BPMN工作流自动向客户发送电子邮件,请求指定所需的项目数量f)当来自客户的回复到达时,它被放置在相应的Kafka主题上,并且由独立的服务检查g)当客户的响应与原始的“待决”请求相匹配时,执行对应的Camunda BPMN“实现客户请求”工作流,并且满足原始请求。
问:通过使用Camunda DMN来定义规则和Camunda BPMN,并由DMN规则评估的结果触发BPMN工作流,整个场景是否可能完成?
发布于 2021-09-29 06:18:28
目前,我正在使用以下工具堆栈:
作为REST端点的
之所以使用Camel,是因为人们可以在没有任何复杂性的情况下为事件制定路由决策。它计划在我们的项目中添加另一个来自Kafka的输入通道。Camel的优点是,新接口不会显示给业务流程部分。我总是使用发送消息事件的可能性来启动进程或继续已经运行的进程。
Camel使用可以配备插件的队列来执行操作。在DMN引擎的帮助下,我将使用此功能来制定决策。根据结果,您可以在Camel内做出路由决策,并将您的事件发送到适当的流程。
请记住,也可以对流程进行建模,该流程使用通过DMN实现的业务规则任务来制定决策。在这种情况下,您可以将事件转发到适当的进程。
因此,请检查需求并选择适合您需求的解决方案。亲切的问候
https://stackoverflow.com/questions/67448255
复制相似问题