日期:2012-09-23  浏览次数:20341 次

SOAP,WSDL,和UDDI定义了XML中的WEB服务,但他们并不能保证会为软件架构中的组件带来好处。要应用WEB服务,协议需要更加清晰,工具需要更加好用,而且,IT项目经理和开发商也需要在思想上有所转变。

但WEB服务在通信中的优点,诸如可重用组件和企业应用中的易集成性,已经使得微软和IBM惊异于它的高效。尽管WEB服务的应用尚在实验阶段,媒体已经将这些高级的概念深入人心。尽管开发者和反对者意见不同,但他们都从WEB服务中得到了大量的机会。

这里有一些开发者在WEB服务中发现的缺陷,其中有部分得到了解决,其余的还没有:

安全和鉴别
在WEB服务的所有缺陷中,这两点是最早也是经常被提到的。幸运的是,当你处理敏感数据时,你可以利用SSL这个WEB加密工具,可以较好的防止你的XML信息被窃听,但在服务器上鉴别XML文档就是另一回事了。在不同的标准委员会之间有六种鉴别方案,试图通过数字特征等来解决这个问题。但标准确定下来还需要一段时间。

事务的完成
象一个供应链那样,当有多方参与时,事务就会变的长期和复杂了。这就需要找到一个办法来监视复杂的事务,使得过程中的所有部分都可以得到鉴别。一些标准,包括安全声明标识语言(Secure Assertion Markup Language),商业事务协议(Business Transaction Protocol),和IBM的HTTP,已经被引入来解决这个问题,但标准委员会还没有对他们进行论证。

执行
这个问题还没有很好的办法。HTTP上的XML解决这个问题有些失之简单。在其上的安全协议中,用户不能对特定的动作做出迅速的回应。除了用户所期望的信用卡检测还很慢之外,其他潜在的问题也使得WEB服务在企业内部项目和自动的B2B事务得以应用还有待时日。

更高的可依赖性
当多应用依赖于WEB服务时,那WEB服务的任何变化都会使得应用失败。同样的,个人WEB服务的普及也需要对硬件进行密切监控以确保他们在正常运行。而且当程序员试图为以后的应用预定义一个功能时,象任何建筑部件一样,WEB服务的组件也需要统一命名。

有效性和可靠性
WEB联接也许比以前更可靠,但当你通过防火墙访问组件时,你必须忍受漫长的等待。你还得信任这些组件,实际上,他们是存取XML的API的黑盒子。所以在值得冒险去应用WEB服务之前,公司之间不得不建立起老式的信任关系。

额外的发展努力
任何人都喜欢正确的方法来构建应用软件:完整的文档和最大限度的可复用性。实际上,项目需要在预算内按时完成。第一次利用WEB服务所提供的组件来构建应用软件需要额外的付出和时间,但无论如何,许多IT项目经理都不想因为以后可以从可复用性中得到好处而推迟项目的完成。同样的,让一个IT项目经理组件化他的应用程序,而使应用程序更加漂亮,这样的可能性很低。即使用WEB服务的组件可以为其他应用软件带来好处。

但这些缺陷没有一个被完全肯定,事实上,我所见到的开发者都赞同WEB服务的发展方向,他们中的许多人正在主持项目的开发。

我们目前应该对WEB服务的局限性有清晰的认识,也应该对我们要得到这些好处所许要付出的时间和努力有一个现实的估计。也许和许多其他技术不一样,这个很有前途的技术可以避免被赋予过高的期望。
(转)