架构Web Service:基于Web服务的应用、解决方案和开发平台 | ||||
柴晓路 (fennivel@uddi-china.org) (本文最初由 IBM developerWorks 中国网站发表,其网址是 本文是架构Web服务的系列文章的第三篇,继Web服务的技术定义和技术规范介绍之后,来探讨目前现有的Web服务实践。首先,作者考察了现有的Web服务应用,然后考察了一些B2B解决方案提供商提供的基于Web服务的解决方案和产品,最后对几大平台供应商所提供的Web服务的开放工具与平台作全面的介绍。 在本系列的上一篇文章中,我就什么是Web服务,Web服务使用的标准和技术作了详细的探讨。那么目前是否已经有基于这样技术的应用、解决方案和开发工具交付给用户呢?答案是肯定的,Web服务已经开始实践了。目前来看,现有的基于Web服务架构的应用已经开始在Internet/intranet中部署了。他们涉及到前面提到的Business-Oriented Web Service、Client-Oriented Web Service、Device-Oriented Web Service和System-Oriented Web Service等。 本文所引用的资源主要包括两类,一类是Web服务的技术资源网站,包含了大量Web服务的技术信息,另一类是Web服务“stack"系列技术规范,他们是一个整体的技术体系,包括UDDI、SOAP、WSDL、XML等。本文的最后给出了这些资源的链接,有兴趣的读者可以通过这些资源链接找到所需的内容。 Public UDDI Registry UDDI Registry是一个面向系统使用的Web服务,作为Web服务的技术注册中心而存在,关于UDDI Registry,我在本专栏中已经使用了多篇文章加以介绍,在这里就不再赘述了。以下是这些文章的链接。
Microsoft Halistorm Microsoft的Halistorm是架构在Microsoft自身的.NET平台之上的,提供了基于 Web 的分布式应用程序之间共享信息时所需的一些基础资源平台。这是一个面向个人用户的Web服务平台,用于个人用途的存储、检索和交换信息。不过,HailStorm 的设计目的并非是用来管理任何类型的信息,而是专门用来管理为个人存储的个人专有信息。以下是一些有一定关系但是分别代表不同情景的示例:
此外,列车运营商也许可以提供一项网上列车时刻表服务,借助微软的新技术,随时把最新的列车到发信息送到你的桌面或其他设备。而如果你再大胆地展开自己联想的翅膀,就会发现这对于象联邦速递、中国国际航空公司等大公司的意义很可能是革命性的。此外,HailStorm的客户端将不仅仅是Microsoft的MSN Messenger,还可以是Palm/PocketPC等,由此还可以想像一下,那时候你将在股票价格达到一定水平时马上就能够从自己的手持电脑或其他设备中得到即时信息,并且可以随时通过你的即时通讯软件把股票卖掉或者完成其它任何工作。 Bowstreet Solution Bowstreet是由Gartner Group评估的六家Web服务领域最领先的企业之一(这六家企业包括:Microsoft、IBM、HP、Bowstreet、SUN和Oracle)。Bowstreet的销售的主要产品是两个:Bowstreet? Business Web Factory和Business Web Portal Solution。 Bowstreet Business Web Factory是一个Web服务的建模、装配、动态更改管理以及定制的平台。它由三部分组成:"Designer"、"Customizer"和"Automation Engine"。
Business Web Portal Solution包含Bowstreet针对企业电子商务而开发的一整套商务产品,诸如Enterprise Portal、Supply Chain Collaboration等,而这些产品全部基于Web服务,能够在一个统一的平台下进行集成交互。 DealEasy Enterprise Portal Solution DealEasy Enterprise Portal完全基于两种技术:
其中信息共享包括:
服务集成包括:
Portal的组件服务包括:Collaborative Platform / Knowledge Base / Information Aclearcase/" target="_blank" >ccelerator / Private UDDI Registry / Routing and Reliability Service。 Web服务构建平台与服务组件 以下是由主要平台提供商提供的Web服务的开发工具和平台: Microsoft .NET Microsoft .NET无疑是概念上和技术上的双料冠军,其涵盖面和复杂程度是首屈一指的,这其实也恰如其分地反映了Microsoft在XML Web服务领域的领导地位。.NET的框架可以参阅下图: Figure 1. Microsoft .NET的体系框架 其中Visual Studio .NET已经有了beta 2,可以通过测试和合作伙伴的方式获得。其他的一些开发平台和开发组件可以通过以下网址访问:
Microsoft的Web服务的全套平台和工具无疑是优秀的,但是其缺点也是明显的,无法在Windows平台之外的平台上使用,不过Microsoft宣称在今年及以后.NET的运行平台.NET Runtime (Common Language Runtime)将会陆续支持FreeBSD、Linux以及UNIX,让我们拭目以待。 IBM Web Service IBM在Web服务领域的拓展一改上一个世纪的稳重而稍嫌保守的作风,变得积极进取、大步流星,而且步步坚实。在Web服务的规范上,Microsoft是IBM的主要合作伙伴,诸如SOAP、WSDL和UDDI,IBM和Microsoft都是绝对的技术先入者。而在内部实现技术,IBM则采用J2EE架构,除了依靠自己的alphaWorks的力量外,还博采各类开放源代码组织的成果(诸如Apache SOAP和jUDDI等),在自身的Websphere平台上提供了完整而且领先的Web服务的开发工具。 这些软件包和工具主要有:
Sun ONE Sun在发明了划时代的Java之后,似乎一点一点失去了他的创造性,全球最大的基于Java平台的软件开发商是IBM,不是Sun,全球Web技术最领先的软件开发商是Microsoft,不是Sun,Sun可能"坚定地"以为Java就是Internet,看来在经历了Microsoft和IBM在Web服务领域的迅速领先,以及这两家公司在Web服务领域的密切合作之后,Sun终于明白Web服务是Java不得不面对的新的系统架构模式。 虽然稍显匆忙,但Sun还是及时推出了Sun在Web服务时代的解决方案Sun ONE。不过Sun ONE更象是一个Sun提供的加入了Web服务特性的J2EE平台,而不像是一个纯粹的Web服务的开发平台。同时它最主要的缺点是对Web服务的描述和发现的两个标准(WSDL和UDDI)的支持尚不完善。 Case Study: 实践Web服务 到目前为止,我已经对Web服务的商业需求、Web服务的技术实现以及Web服务当前的应用以及开发工具做了全方位的介绍,那么在接下来的文章中,我将结合一个实例来详细地描述如何真正地规划、设计和创建一个Web服务的具体应用。 参考资料
作者简介 柴晓路: 上海得易电子商务技术有限公司(DealEasy)首席系统架构师、XML技术顾问。UDDI-China.org蓝色火焰工作室(Blue Blaze Studio)成员。UDDI Advisor Group成员,WSUI Working Group成员。2000年获复旦大学计算机科学硕士学位,曾在国际计算机科学学术会议(ICSC)、亚太区XML技术研讨会(XML Asia/Pacific'99)、中国XML技术研讨会(北京)、计算机科学期刊等各类国际、国内重要会议与期刊上发表论文多篇。专长于基于XML的系统集成和数据交换的技术研究,同时对数据库、面向对象技术及CSCW等技术比较擅长。 |