2

我无法完全理解 WS-CDL 的使用。与 BPEL 不同,它不是一种可执行语言。那么,它实际上是如何使用的呢?

搜索歌(所有谷歌万岁)并没有真正产生任何有形的东西,只有描述非常简单交互的 WS-CDL 示例。我没有找到在 WS-CDL 上运行的工具或引擎的参考资料。

如果要对 BPEL 和服务编排进行相同的搜索,那么我们会得到一些东西,我们会得到具体的示例和引擎/工具。另外,服务编排非常具体。无需参考 WS-* 标准即可查看现实生活中的编排。这是我在现实生活中见过的唯一一种外部定义的服务组合(基于 WS-* 等等。)

所以,我是出于真正的好奇而问这个问题:WS-CDL 的实际用例场景是什么?您对 WS-CDL 的体验(好的、坏的和丑陋的)是什么?

====== 编辑 2012 年 7 月 2 日 ======

为了跟进我接受的答案(感谢 user1496147),我找到了以下论文(链接自编排与编排博客文章):

Barros, Dumas & Oak “A Critical Overview of WS-CDL”,BPTrends,2005 年 3 月

值得注意的是,在其结束语中的以下段落:

归根结底,WS-CDL 标准化工作在 SOA 的发展过程中来得太早了。确实,WS-CDL 已尝试同时具有开创性并建立共识。在这方面,将 WS-CDL 的开发与 BPEL 的开发进行比较是很有见地的。BPEL 源于两个来源,WSFL 和 XLang,它们源自现有工具(即 MQSeries Workflow 和 BizTalk)支持的语言。此外,连同 BPEL 的初稿一起发布了原型实现。相反,WS-CDL 是在没有任何先前实现的情况下开发的,并且不(直接)从实现支持的任何语言派生。

缺少工具是我对 WS-CDL 状态的第一个暗示,并且会解释(至少部分地)WS-CDL 是如何最终失败的。

4

1 回答 1

4

你是对的,它不是一种可执行语言——它是一种设计(或架构)工件,用于指定分布式参与者之间发生的交互。将其视为您的 SOA 的高级蓝图,而不是被执行的东西。

它是如何使用的?

与任何设计工件一样,它可用于指导实现的开发,甚至为您的服务生成初始模板。然而,它也可以用于测试/验证目的,以确保实现的系统实际上符合编排,因为您有一个机器可读的描述,说明您的业务事务应如何在分布式系统中执行。

当您进行谷歌搜索时,您找不到太多的原因是推荐(w3c 术语)从未在供应商中获得任何采用。

除了缺乏厂商支持之外,它还有两个进一步的限制,一是它没有图形语法,二是它没有兼容的端点(行为)描述,这将更容易理解之间的映射。全局行为(编排)和每个服务端点的行为。如果 WS-CDL 和 WS-BPEL 社区能够一起工作(一个是 W3C,另一个是 OASIS),那么这个问题可能已经得到解决。

不过好消息是 BPMN2 引入了一个编排模型,它与 BPMN2 流程模型兼容,并拥有自己的图形语法。

对 BPMN2 编排的工具支持处于早期阶段。Eclipse 中有一个支持编排模型的 BPMN2 建模器,我正在开发工具来使用编排来帮助生成工件,并在此处验证分布式系统的运行时执行:http ://www.jboss.org/savara

希望有帮助。

于 2012-07-02T13:30:53.803 回答