开源SCA实现Apache Tuscany走向1.0

Apache Tuscany团队日前发布了其开源Service Component Architecture (SCA)实现的0.99版本。SCA是一套旨在简化SOA应用开发的规范,正在作为Open Composite Services Architecture (Open CSA)的一部分由OASIS进行标准化。

InfoQ有机会与开发带头人Jean-Sebastien Delfino对话从而获得了进一步的信息。

当被问及SCA规范还缺少哪些部分时,Jean-Sebastien回答:

很难预言OASIS OPENCSA工作组的成果将是什么样,但是依我看来规范的这些方面尚待努力:
  • 支持更多语言,不仅限于Java,C,C++和BPEL,以及PHP,JavaScript,Ruby,Python,Groovy等脚本语言。Tuscany已经支持这些语言,并且我们将要为各规范工作组准备提案。我们还刚刚收到了一份支持XQuery的捐献代码,这也是一个候选提案。
  • 更多绑定(binding),在Tuscany里我们已经开发了JSON-RPC,DWR,ATOM/RSS,RMI的扩展。我想看到Web2.0的各种绑定得以进入规范。
  • 更多SCA策略,包括事务策略(规范策略工作组已经在进行这个工作)。

这里先前有些争论,到底SCA中组装模型(assembly model)还是编程模型(programming model)更为重要。Tuscany同时支持SCA组装模型(既是编程模型也是服务网络配置模型)和SCA Java编程接口以及标注。Jean-Sebastien了解这些争论,他阐述了自己的观点:

一个业务/集成应用开发者不应该为了参与SOA开发就被强迫了解10种不同的API。我们举一个应用例子,需要和一个数据库,一个ERP系统,一两个Web Service和提要(Feed)打交道,并且集成Web 2.0用户界面。用SCA和Tuscany,你可以通过一个单一的服务编程模型(Service programming model)来看待所有这些东西,而不是10种不同API……SCA就是要简化业务应用开发者的工作,API是其中的重点。

Tuscany SCA-Java项目不只是支持Java语言,而且也支持Groovy、Python、Ruby、JavaScript(0.99中有)、XQuery(没有包含在0.99中,但在1.0分支中已经能用)。基于Apache ODE的BPEL支持也在1.0的日程当中(参见InfoQ上Paul Brown谈ODE的文章)。

还有Tuscany SCA-Native和SDO-C++子项目,已经发行了三个版本。SCA-C++/Native不但支持以C++编写的SCA组件,还支持Python、Ruby和PHP;与本地Python、Ruby和PHP解释器集成良好;支持Axis2C的Web Service,和以模块方式与Apache Httpd集成的REST。SDO-C++提供一个高性能的SDO API的C++实现,并与Apache Axis2/C当中的Axiom集成。同时还有PHP支持,由SCA-SDO-PHP项目提供。

Tuscany SCA-Java 0.99是1.0之前的最后一个版本。IBM WebSphere Application Server V6.1 SOA功能包是一个已经利用了Tuscany的商业产品。据Jean-Sebastien的意思,想法是九月中旬剥离1.0发行版分支,而九月末放出1.0版本。

Jean-Sebastien同时要我们申明Apache Tuscany团队乐于接受任何贡献,包括代码,测试,改进文档,或者bug报告。需要下载或者获得发行版的更多信息请访问http://incubator.apache.org/tuscany/sca-java-releases.html。

查看英文原文: Apache Tuscany Open Source SCA Implementation Approaches 1.0 Release

你可能感兴趣的:(开源SCA实现Apache Tuscany走向1.0)