55、分布式业务流程的通信抽象

分布式业务流程的通信抽象

在分布式业务流程中,有效的通信至关重要。本文提出了一种介于传统工作流和消息层之间的通信和控制层,为通信的描述和执行提供了一个独立的区域。该方案基于一组强大且相对简单的抽象概念,包括通道、属性、属性关系和过滤器,能够实现各种形式的消息关联、选择、聚合消费以及基于时间的消息消费。

1. 通信模型

该通信模型抽象了通道和过滤器与业务流程活动或事件的关联方式,因此可以集成到各种流程定义语言中。
- BPEL扩展 :BPEL中的入站通信操作有两种形式,即独立的接收活动类型和调用活动的第二部分。通过使接收和调用活动能够引用上述定义的通道和过滤器,可以扩展BPEL。通道可以与BPEL中的伙伴链接和操作相关联。
- YAWL扩展 :可以在YAWL中定义一种消息接收任务,具体步骤如下:
1. 任务启用时,注册一个作为任务分解一部分定义的一次性消息消费过滤器。
2. 任务等待,直到过滤器返回匹配结果。
3. 如果在找到匹配项之前任务被取消,则撤回过滤器。
此外,还可以将消息消费过滤器附加到YAWL流程模型的初始条件上,以捕获特定场景。

2. 实现与评估

实现基于名为JCoupling的中间件服务和API,它支持主流通信中间件所支持的通信风格的超集,并且抽象了传输协议细节,使我们能够专注于核心方面。它支持单向和双向通信、时间、空间和同步解耦,并提供故障传播支持。

以下是原型的架构交互流程:

graph LR
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值