|
4.2 开放
4.2.1 标准的力量
这个地球上,约占全世界人口25%的中国人,不管在何地,只要是他们聚集居住的地方,都能坚持使用祖国的语言和文字,特别是文字。有些地方,即使语言不通了,但还有华文文字和华文文字的报纸书籍,把我们祖国的文化传统和精神保留下来。
也许,这应当感谢秦始皇在公元前二世纪统一中国后,紧接着统一了全国的度量衡,并在此基础上推行了"书同文,车同轨、统一弛道、统一货币、统一兵器"等重大政策。实际上,我们可以把上述这些活动都理解为标准化。
我们知道,在中国数千年的文化历史上,提出"书同文"、"车同轨"、"行同伦"等口号是为了达到所谓理想的大同世界,实现大同之治,使得大道之行、天下为公。
在 IT科技的历史上也曾有过几次重大的标准化事件。在上一世纪50 年代末,IBM 只是众多生产和销售电脑的普通公司之一,其它类似的公司有:Burroughs、NCR、RCA、GE、Honeywell等等。每家公司的电脑都建立在一定的技术基础之上,它们之间不会相互合作,即便是同一家公司,每个电脑系统也都有自己的计算机外围设备-例如打印机和磁带驱动设备。这意味着,如果客户想要升级某台电脑或使用某些新技术,他们就不得不全部抛弃自己拥有的硬件设备和软件系统。换句话说,他们不得不"剥离和替换"所有的东西。此时 IBM 发明了大获成功 S/360 主机系列,它的家族产品中的每一份子-从非常小的系统到非常大的系统上都可以运行为某个系统开发的软件,而所有的计算机外围设备-打印机、磁带驱动器、读卡器也会和家族中任何一款兼容,对于需要IT 技术的大型企业客户来说,S/360 是神来之笔,而因此 IBM 也打败了同一时期所有的竞争对手。
另一次是上一世纪80年代初,IBM 发明的个人电脑,同时 IBM 公布了个人电脑的各种接口和技术细节,很快个人电脑被各个厂商大规模生产,进入了中小企业,家庭个人,到现在,它已渗透到人类生活的方方面面。
上述的例子都说明了标准的力量,标准可以给一个企业带来巨大的成功,也可以成就一个巨大的产业。
4.2.2 开放的标准--企业技术选择的必由之路
面对开放标准其实只有两种选择:或是所有人都使用同一套技术;或是所有的技术之间能相互连通与整合。
从本质上看,所有人都使用同一套技术是"标准",但不是"开放",它是一种专有体系的垄断。人们早已发现开放体系和专有体系之间存在利益冲突。专有体系可以锁定客户,短期内客户会觉得得到了方便,但是,从长远来讲,与专有体系的短期获益相比,开放体系总能引入更多竞争,带来更多创新,从而降低成本,提高性能。因此,企业应该支持开放性并寻求在开放体系中的优势资源,而不是逆势而行,采用专有的、封闭的解决方案。
抽象来看,一个企业是由许多人、业务流程和技术资源这些元素组成的。在现实世界中,企业要做得也远不止将内部方方面面用技术集成连结起来。每一个企业都有自己上下游的供应商和合作者,有自己的客户。在激烈的市场竞争中,对于外部的威胁和新的市场机遇,企业必须以最快的速度给予响应。这要求企业与供应商和合作伙伴及客户有紧密的联系。而能被企业与供应商和合作伙伴及客户所共同接收的一定是开放标准的技术,而非专有垄断的技术。
因此,开放的技术接口和统一的标准是企业技术选择的必由之路。
从现有技术层面来看,能为企业所用的开放标准技术有下面几种:
Java,XML,Linux,Web 服务,网格计算和网格服务
Java 技术
Java 使企业业务应用程序的代码可以不被锁定在某一个厂商的专有平台上,它是平台无关、厂商无关。"一次编写,随处运行"是它的口号,而在大多数厂商的支持下,它也确实实现了这个目标。在某种程度上,Java 代表了应用程序编码的开放标准。
XML 技术
XML则解决了企业业务数据的表示问题, 它提供了交换数据的载体的描述和定义。就像 HTML 定义了 Web 浏览器所看到的数据格式,一个格式适合的 HTML 文档可以被支持 HTML 格式的任何一个浏览器打开,从而用户可以观看 HTML 文档。同样,一个格式正确的 XML 文档其内容也应可以被支持 XML 的应用程序所读取,从而使数据被企业应用所接受。
XML 文档所描述的数据也可以在企业业务流程中传递,实际上是数据在不同的系统、不同的应用之间的处理流转。如果没有一个标准的格式(如XML)定义,数据是无法被不同应用共享的。除了易于建立和易于分析外,XML主要的优点还有它既是平台无关的,又是厂商无关的。
Linux 操作系统
不同于以往的任何一个计算机操作系统,Linux 的所有源代码是公开的,它是开放源代码运动的产物。在得到了业界绝大多数硬件和软件厂商的支持后,现在它几乎可以运行在任何一种硬件平台上,从手机到个人电脑、服务器甚至IBM 大型主机都可以看到它活跃的身影,众多大型的企业级软件也可以运行在 Linux 上。随着 Linux 技术的不断发展,它已完全可以作为一个企业级的操作系统,并且类似 IBM 这样的大型厂商也在积极的为Linux 加入更多的企业级的特性。有了公共的操作系统 Linux,为一个硬件平台编写的应用可以不用修改的转到另一个硬件平台的服务器去运行(只需要重编译即可),Linux 给了开发人员极大的自由空间去创造新的应用,并且它同样也促进了整个产业走向开放标准的文化氛围。
Web 服务
仿佛一夜之间,无数的技术媒体和技术文章都在热烈地讨论 Web 服务的好处,人们提出了各种的预想和期望,撇开这些尘嚣,Web 服务到底是什么?Web 服务能做什么呢?
互联网 Web 技术的核心- HTTP, URL, HTML
自从有了 HTTP,URL, HTML 之后,互联网得到了极其迅猛的发展。人们可以在联入互联网的任何一台机器上用浏览器查看任何一个网站的 Web 页面。
在其中的技术层面上,HTML 用来描述 Web 文档,HTTP 用来实现传送,URL用来实现文档的定位。有了这三种技术,人们就可以用浏览器进行对话了。HTTP 实现了"车同轨", HTML 实现了"书同文", URL 则"统一弛道",从而实现了 Web 世界的大同。
我们当然希望企业的业务应用之间能如同人使用浏览器一样,借用互联网的成熟技术来自由的对话,但用什么方式来实现呢? 答案是 Web 服务,Web 服务实现了企业业务应用间的自由对话。
Web 服务的技术核心 - SOAP, UDDI, WSDL
Web 服务是设计用来让存在于各种环境中的软件组件之间互相对话的。软件组件可以是一段代码、一个程序、一个业务流程程序等等。借助 Web 服务的技术,一个软件组件可以请求另一个软件组件为它提供服务,提供服务方的软件组件可以用接口的方式来公开它提供的服务,在服务注册站上发布它可以提供的服务。请求服务的软件组件不用关心提供服务的业务组件位于何方,用何种语言编写,数据用何种方式编码,支持何种通信方式,以及服务具体的实现细节等等。 相对应于 Web 技术,Web 服务用 XML/XSD 来实现数据的描述,仍可以借助于 HTTP 之类的协议实现传输(SOAP/HTTP)和调用,而使用 UDDI 来定位和发现 Web 服务,用 WSDL 来描述和定义服务的接口。
SOAP 是使用 XML 和 XSD来描述其数据类型的。当你用某种语言(如Java, C++)来构造一个Web 服务时,为了符合Web 服务的标准,所有你使用的数据类型都会转换为XSD类型。
Web 服务能干什么呢?
如果将互联网看作网络的动态互联(inter-network)的话,那么 Web 服务可看作企业应用的动态互联(inter-application)。Web 服务将使企业供应商、合作伙伴和客户之间的"动态集成"成为可能。动态集成意味着新的应用功能将能够快速地生成,灵活的变更。 从而使企业在专注自己核心业务的同时,与供应商和合作伙伴及客户有灵活和动态的联接,对外界的变化给予最快速度的响应。
网格计算和网格服务
网格计算是一种全新的网络构建技术。它通过利用一系列的开放标准及协议,整合分布在局域网或广域网的资源,包括应用程序、数据、硬件计算能力(CPU、内存等)、存储等,使这些资源成为一个巨大的虚拟计算机系统,再通过网格计算软件在大量个体、机构组织等之间利用安全、协同式的资源共享,创建一个动态虚拟组织(VO-Virtual Organization)。基于这种虚拟动态组织的网格计算不仅跨地域,而且延伸到不同的组织、异构的软件硬件平台,为每一个连接到网格的用户提供一个无限的计算能力、沟通协作能力及信息获得能力。
网格计算在商业上的应用就是网格服务,相应的标准是开放网格服务体系架构(Open Grid Services Architecture - OGSA)。OGSA最突出的思想就是以"服务"为中心。在OGSA框架中,将一切都抽象为服务,包括计算机、程序、数据、仪器设备等。这种观念,有利于通过统一的标准接口来管理和使用网格资源。 Web 服务提供了一种基于服务的框架结构,但是,Web 服务面对的一般都是永久服务,而在网格应用环境中,大量的是临时性的短暂服务,比如一个计算任务的执行等。考虑到网格环境的具体特点,OGSA 在原来Web Service 服务概念的基础上,提出了"网格服务(Grid Service)"的概念,用于解决服务发现、动态服务创建、服务生命周期管理等与临时服务有关的问题。有了网格服务,所有的计算资源就可以通过统一的标准被虚拟化地调用了。 |
|