快捷搜索:   nginx

建置XML构架的WebServices之比较

I. 序

  在本文中,我们将深入的比较两种可用来建置商业XML Web Services的平台,分别是Sun Microsystems 所提供的Java 2 Enterprise Edition (J2EE)以及Microsoft所提供的 .NET平台。

  虽然J2EE代表的是一个公开的标准,而 .NET是单独一家厂商的标准 (虽然.NET试图取得ECMA的标准,但是却只有在最基础的部分被ECMA采纳变成标准,请参考http://msdn.microsoft.com/net/ecma/,在企业的应用上却没有标准化),反观Java平台,确是所有除了Microsoft以外的各大厂商都遵循着JCP的标准制定所有规格 (请参考http://www.jcp.org ,您会发现所有的Java技术都是协调各大公司而来)。

  尽管在标准化上Java遥遥领先,但我们仍然将只针对服务器端的Web Services架构做探讨。例如:我们的讨论将不涉及 JINI 或是Office XP,我们也不会讨论Java跨足Solaris、Linux、Mac OS X、以及Windows平台,而.NET只跨Windows 98/ME/2000/XP等Windows平台的事实。我们更不会讨论 "跨语言" 这个Java早已试图达成,Microsoft又拿来当成.NET的重大特点,却根本不是这回事的功能。(请参阅http://grunge.cs.tu-berlin.de/~tolk/vmlanguages.html,大家可以发现Java早就达到所谓跨语言的功能,Smalltalk、Eiffel、Lisp、Prolog、BASIC等语言都可以顺利转换成Java bytecode,不像.NET号称跨语言,却出现COBOL.NET这种怪物,原本的语言要削足适履来配合.NET,所以才产生VB.NET、COBOL.NET这一大串产品)。号称跨语言喊了半天,原来连自己的VB 6.0都跨不过去。在读完本文之后,您将会更加了解这两种架构的彼此优缺点,而且在制定贵公司下一代Web Services决策时将有更明确的考虑。

  II. 前言

  下一代的分布式运算时代已经来临了。在过去几年中,XML 被广泛的运用于计算机运算环境中,以达到在全球信息网上共享信息的远大目标。如今,它可以更进一步地提供运算能力上的分享。从技术的观点来看,Web Services的出现并不能算是分布式计算机运算的新革命。它可以结构化的呈现信息,甚至是程序内部的讯息,因而很自然地比XML应用程序更加引人注目。

  III. 工业标准与企业标准

  透过Web Services,任何应用程序可以在网络上顺利地整合在一起。Web Services的基本原理是利用标准的网络协议(例如:HTTP)来传送XML讯息。这是一种非常轻便的沟通机制,因此可以让任何程序语言、中间层组件或平台很轻易地整合进来。一般工业上或企业内部会接受成熟且广为厂商采用的业界标准,更尤其是已经受过市场考验行之有年的标准。有了Web Services,您就可以快速且低成本的整合两个企业、部门或甚至是两个程序。

  要建置Web Services必须得采用业界通用的Web Services技术。现在让我们来看看Web Services究竟是什么。首先您必须先知道如何建置以及使用Web Services。其实Web Services是种很简单的XML接口,适用于商业、应用程序以及系统服务。说穿了也就是将既有的技术旧衣新穿而已。Web Services其实是一种新一代的分布式服务,在这之前,有CORBA、DCOM、COM 、RMI,都是用来实作分布式架构的技术,而且也被证明运作的非常顺利;而新一代的分布式服务,采用的是XML技术,如XML-RPC和SOAP就是最佳的例子,新一代的分布式技术可以用寄有的通讯协议做基础(如SMTP、FTP等),但是目前最受欢迎的方式仍然是将XML基植于HTTP这个广受欢迎,但是效能并非最佳的通讯协议上。即使如此,这些新一代的技术尚未通过时间的考验,或许他们有可能运作得很成功,也可能有些许的风险存在。

  面对这么多的分布式技术,J2EE平台与.NET平台的支持程度如下表:

  对旧有分布式技术的支持:
顶(0)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论