Fremantle 和 Weerawarana 谈论 WSO2 基于 OSGi 的 SOA 新平台

  • Stefan Tilkov
  • 黄璜

2009 年 2 月 18 日

话题:SOA架构

开源 SOA 软件供应商 WSO2,作为 Apache 软件基金会许多 Web 服务项目的幕后驱动因素,最近宣布了他们称之为“业界第一个完整的组件化面向服务架构(SOA)框架”,名为WSO2 Carbon。这一平台发布的同时,一系列产品族也发布了更新,包括 WSO2 的注册服务,ESB,以及 Web 服务应用服务器(WSAS),还有一个用于业务流程自动化的新产品名叫 WSO2 业务流程服务器(BPS)。InfoQ 与 WSO2 的创始人 Paul Fremantle 和 Sanjiva Weerawarana 就这一重大发布进行了交谈。

我们首先关心用户真正能从 Carbon 获得什么。Paul Fremantle 表示他们能从两个大的方面受益,首先是开发者能为他们的架构在合适的场合选择合适的组件,其次是基于 Carbon 的不同产品间有着共同的易用性,可采纳性以及技术的互通性:

如果你要学习如何为 Java 服务进行安全配置,你可以添加业务流程,你已熟知如何为流程进行安全配置了,因为整个系统共享同样的控制台,同样的代码和同样的用户界面。更妙的是,你能添加新组件而不必再次安装,就像你将新的插件添加到现有 Eclipse 工作台一样。

我们同样打听了 WSO2 为何为选择 OGSi,而不仅仅是出于追赶时髦词汇。Paul 回答说实际上在 OSGi 带来的好处令他们转向它之前,他们曾尝试构建自己的组件模型原型:

首先,OSGi 啃掉了许多的硬骨头——版本管理,生命周期,服务注册,以及其它方面。其次,以 OSGi 作为基础意味着我们可以重用许多现有的系统,工具和套件。最后,也是最重要的,这意味着开发者在使用 Carbon 带来的组件的同时还能使用多种多样的其它组件。

Sanjiva Weerawarana 声称 WSO2 是第一个真正运用 OSGi 作为组件模型来创建 SOA 组件平台的:

这就像 Eclipse 在工具集中所扮演的角色一样... 它是一个包括一些内置组件的平台,并且是为其它组件插接作好准备的框架。举例而言,我们有一个大型的软件公司客户目前正在 OEM 加工我们的基于 Carbon 的产品并将其嵌入他们自己的世界,还用他们自己的 OSGi 组件对我们的框架进行扩展。所以,虽然 IBM 的 Websphere 也提及了 OSGi,你却不能说买来 Websphere 应用服务器然后直接在其之上“添加”ESB 或工作流功能。而用我们的产品就可以,就在今天。

WSO2 同时还发布了其第一版的业务流程服务器产品。问到它与竞争产品的区别时,Paul 坦承第一版还不是设计为能参与特性清单竞争的:

它被设计为易于使用,简化部署与管理。BPS 最大的好处在于它从 Carbon 的其它部分继承而来的共享组件集合:完整的安全管理(包括 SAML 标记支持,签名,以及加密),用于测试流程的即时试用功能,日志记录和追踪,缓存与流量控制,当然还有共同部署其它 Carbon 特性比如注册,数据服务,仲裁等等的能力。

Sanjiva 还补充到,在他看来,BPEL 是用于编写(组合)服务的方式,因此应该被置于不同的位置:

IntalioActiveVOS等等不同的是,我们并不将 BPEL 看作是世界的中心。通过将其看作是一个服务执行的运行时,我们继承了所有的服务执行的支持基础设施 - 安全管理,可靠消息传输,流量控制,缓存,等等。

他承认为了实现集群还需要有更多的工作要做。谈到 WSO2 平台仅仅关注于 Web 服务这个观点,Paul 强烈地否认这一情况:

我们对于邮件,文件,JMS,FTP,FIX,TCP 和 HTTP 传输都提供了开箱即用的支持,我们有仲裁机制能够处理诸如 COBOL 记录的遗留格式,CSV 文件,甚至是 JSON。我们支持 CORBA 连接性并且有一流的数据库访问支持。我们有一款产品,客户用于访问 CICS 和大型主机服务,与此同时还使用 Hessian 二进制协议服务。

从文档看来,同时再匆匆的看一下这些产品第一次启动时是如何展示其自身的,就会发现 WSO2 的故事十分令信服。看一看资深用户在他们的 SOA 项目里使用这些产品会获得什么样的结果将会非常有趣。

WSO2 的网站将能获取更多关于 WSO2 新产品的信息(包括下载选项)。

查看英文原文:Fremantle and Weerawarana on WSO2's New OSGi-based SOA Platform

SOA架构