记得几年前看过一篇文章,将IT里出现的ERP、CRM等等英文缩写称为“新三字经”,其意思大概说,很多人都会将这些英文缩写挂在嘴边,并以此为荣,但实际上有多少人知道这些缩写的意思呢,更不用说能对其进行一些深入浅出的解析了。
眼下,SOA就是“新三字经”的代表,从去年开始,这个词就频繁出现IT行业中,但是有多少人能说清楚SOA呢?
根据计世资讯最新的统计,只有30%多的企业用户听说过SOA,而只有14%的人了解SOA,几乎所有企业用户对SOA的了解都是停留在比较浅显的层面上。
与此截然相反的是,尽管不了解SOA,但是在这30%多知道SOA的企业用户中,有超过80%的企业认为SOA很重要,超过40%的企业更表示在未来的IT建设中会采用SOA架构。
从铁路出现看SOA产生
面对SOA,企业一方面是不了解,一方面却又非常重视,那么SOA到底是何方神圣?
眼下,最普遍的对SOA的解释是:SOA(Service-Oriented Architecture,面向服务架构),它是一种架构模型,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。
不可否认,从这个复杂的标准定义中,除非是很专业的人士,否则很难理解SOA到底是什么?那么就让我们抛开复杂的技术词汇,从管理的角度来看SOA。
为什么会出现SOA?简单的说,这与工业时代铁路的出现和发展有异曲同工之妙。从IT发展历史的角度来说,SOA的发展和原来的工业革命发展的历史其实是有惊人的相似之处,也就是说当时铁路网的铺设过程就和SOA发展的轨迹几乎一样。
在工业时代,铁路系统的出现对于当时的经济发展非常重要。最初的铁路都是由矿业主自己私人修建的,最初修建的铁路是杂乱无章的,形成了众多的铁路系统和标准,这些铁路之间也没有有效利用。
随着铁路和火车越来越多,人们开始注意到,铁路和铁路之间的不通行、互相孤立,以及铁路之间缺乏管理,对于铁路系统的发展是非常致命的,后来为了解决这些问题,开始出现了专门负责铁路规划、建设和管理的部门以及规章制度。
这与IT网络的发展几乎一样,也是从无序发展开始,每个企业都在建立自己的IT系统,每个企业之间并不互相兼容,即使在每个企业内部,每个部门都可能各自独立,和铁路的发展一样,这种无序化让IT管理变得困难。
在这种情况下,SOA的概念在十多年前被Gartner公司提了出来,当时提出SOA的主要目的就是让每个IT系统都有自己的自主力,灵活的发展空间,但同时又能够随需共享,这种情况好比是一国多制或者联邦制。
任何新的事物出来之后都需要有个标准化的过程,铁路如此,信息系统也是如此。如果将铁轨的宽度看成是一种标准,那么SOA就是未来信息系统的一个构建标准。
铁路宽度是怎么制定的呢?据悉,美国铁路两条铁轨之间的距离是4.85英尺。为什么是这个奇特的标准呢?原来最早美国的铁路是由英国人设计建造的,而英国的铁路是由建电车的人设计的,可最先造电车的人以前是造马车的,他们习惯性地把马车的轮宽搬到了电车上。然而,英国马车的轮宽之所以用这个标准,是因为其老路的辙迹是这么宽,如果马车用其他轮距的话,轮轴就很容易损坏。据资料显示,英国老路的辙迹宽度是罗马战车形成的,而罗马战车的轮度是依两匹拉战车的马屁股宽度设计制造的。就这样,两匹马屁股的宽度就构成了现在铁轨的宽度。
那么信息系统的建立标准又是如何决定的呢?从软件业和网络的发展角度来看,在技术或者连接上出现过很多的标准,但是这些都不是最大的标准——信息系统将以什么样的方式来构建? 这不是技术问题而是一种理念。
这个标准最终的确立是由用户决定的。这好比是Web1.0和Web2.0的区别,一个是大教堂模式,另一个是大集市模式。Web1.0是一个典型的大教堂模式,是自上而下的,用户是被动的,等级伸延的,所有开发软件都是这么一个角度;Web2.0是一个大集市模式,自下而上,用户占据主动的位置。
在《世界是平的》一书也有这样的分析, 1.0是殖民主义的时代,2.0是跨国公司主导,3.0的时候这个全球化被定义为个人的全球化,个人的全球化的意思其实就是Web2.0所讲的大集市模式,对应公司的要求,个人的全球化和Web2.0对应的企业的要求可能只有像一个比较灵活的架构才能够应付外边的压力。
而且全球化本身就是SOA的一个推动力,一个特别简单的例子就是当中国的一些企业进入WTO,尤其是在海外上市了以后,它直接就需要受到国外的那些证券法律的监管,监管条律就要求它必须要把现有的信息发放出来,按照一种标准发布出去,这就直接导致了一些企业最先做SOA的渴望。
从这个角度上来说,可以明确SOA不是一款产品,更不是一种技术,SOA只是企业系统平台架构设计中的一种方法,一种理念,可以用任何一种现今成熟的技术实现它。正如搭建房屋所用到的方法和理念的设计,需要人的力量来完成一样,SOA的实施,也需要有相关软件产品的辅助。所以,在目前市场上,已经有很多企业推出了用以实现SOA的软件产品。在这些软件产品的辅助之下,所搭建的系统平台,又被称做SOA系统架构平台。对于实施团队,SOA不是一个产品而是一个架构;对于管理团队,SOA不是一个项目而是一个规划。
SOA这个概念已经提出十年多了,为什么很多人还不是很认同这个理念。宋代苏东坡写过的对联来解释这一现象,那就是”茶,好茶,上好茶;坐,请坐,请上坐。它表达的就是当一个人一波三折地到达你家里的时候,你对他尊敬的感觉逐渐油然而生,最开始的时候你觉得此人很普通,到最后你发现此人是高手。这种变化将是企业对于SOA的认识过程:乍一看不就是一种松散的连接吗?用过之后才逐渐体会出其中的奥妙,虽然仅仅是三个字母,但意义非凡。
查看本文来源