“随需应变”、“灵动商务”这些溢美之词不断加诸于SOA上,在所有华美的包装之下,人们往往会忽视SOA在充满“阳光”的背后也有一丝异样的味道。
SOA是近几年非常火热的一个技术话题。只要是从事IT行业,或者和IT行业沾一点边的人,不知道SOA的可能性是非常之小。(详见本期《调查》栏目)从前几年的概念普及,到现在与SOA相关的产品出炉,SOA正在向我们走来。有人说,SOA的市场成熟了,一个属于SOA的新IT时代马上就要来临了。
平民眼里的SOA
一方面,SOA的种种好处让人们对它艳羡不已,一方面人们对SOA又难免有一些认识上的误区。
本刊前不久进行了一次关于SOA的调查,超过80%的IT主管都听说过SOA。再看对SOA的了解程度,超过半数的IT主管认为自己只是一般了解,仅有不到10%的IT主管认为自己比较了解SOA,而在189名参与调查者中,认为自己非常了解SOA的居然是零。
面对SOA的日益火爆,不仅供应商们纷纷标榜自己的产品符合SOA架构,CIO们也怕自己跟不上潮流。懂了的要显示出自己比别人更为了解,不懂的也要努力装出懂了的样子。
曾经有一家出版社将自己的一部分应用改为使用基于Web Services,采用 XML来描述系统接口。由此这位信息中心主任认为自己企业的系统已经可以称之为SOA架构了。殊不知企业门户和SOA还是有本质区别的,建立了企业门户并不等于系统就SOA化了。
虽然企业门户也是基于Web Service,但SOA和Web Service不是同一个概念,SOA是组织IT资源更好地满足业务不断变化需求的一种方法!Web Service是基于标准的、协议化的软件功能和数据的接口。
还有一位CIO提到SOA很不以为然,原因是他认为SOA与BPM(业务流程管理)就是一回事。SOA就是BPM,BPM就是SOA,没什么新鲜的。
一方面,人们对SOA有这样那样的误解。一方面,对于SOA的作用,即便已经实施应用的用户也很难说得清楚。
高贺是中国工商银行鹤岗市分行信息科技部信息应用主管。工商银行有一些系统是符合SOA架构的,但谈起对SOA的感受,高贺的感受和普通的银行顾客差不多,只是感到电子银行自从改用SOA技术后,各个系统间的访问流畅了许多,电子银行的业务范围也有所扩大。
SOA来了
灵动商务、随需应变的口号令人们对SOA充满了渴望,一首在网上流传的打油诗就能反应出人们的心态:
应用软件千千万,
整合起来真麻烦;
SOA一出现,
实现起来变简单。
不用说,灵活的系统是CEO和CIO都期望看到的。把公司转型为“随需应变”的企业,满足各种不同需求,听起来多么具有诱惑力啊!
于是,SOA的概念为人们所热衷,也为供应商所追捧。一时之间,SOA成了一种IT时尚。用户不了解SOA仿佛就跟不上时代的发展,供应商没有SOA产品,仿佛就在激烈的市场竞争中失了先机。谁也不愿意落伍,于是不管懂与不懂,CIO们都对SOA表示出浓厚的兴趣,供应商们也都纷纷标榜自己的产品是符合潮流的SOA架构。
但SOA远远不是为了整合而生,SOA是一种松散的体系架构。
其中,S指的是Service-服务,A指的是Archirecture-架构。
SOA本身就是一种面向企业级服务的系统架构,简单来说,就是一种进行系统开发的新体系架构,在基于SOA架构的系统中,具体应用程序的功能是由一些松耦合并且具有统一接口定义方式的组件(也就是Service)组合构建起来的。
跟管道的、分层的、黑板式的体系结构相比,SOA要更松散。它的模块(组件)只是一些服务,然后可以任意地组合拼接以获得新功能来满足新需求。这些特性为SOA赢来了非常灵活,可以冠以“随需应变”的美名。
传统的分层架构有助于将大系统分解成子任务,每个子任务限制在一个特定的层次上,层间从上到下依赖,从下到上是松耦合。在分层模型中,一般都非常强调接口,因为可以让上层只依赖于下层的接口。
黑板系统主要由三部分组成,知识源、黑板数据结构和控制。
知识源中包含独立的、与应用程序相关的知识,知识源之间不直接进行通讯,它们之间的交互只通过黑板来完成。黑板数据是按照与应用程序相关的层次来组织的解决问题的数据,知识源通过不断地改变黑板数据来解决问题。控制完全由黑板的状态驱动,黑板状态的改变决定使用的特定知识。
换一种说法,过去的技术好比是结合,而SOA是松散耦合。以前好比男孩和女孩想一起出去玩,需要结婚,万一感情不合不想再在一起还需要离婚。而SOA的架构则像朋友交往,可以任意组合。
还有这样一个比喻能帮助你简单的了解SOA,SOA就是邮购。当你从报纸上看到一个邮购广告,然后你剪下来,添上你的需求、型号、递送时间和你的地址,把钱放到信封里然后寄出去。不久你收到了你需要的商品。整个过程首先是异步的,其次不需要了解对方对你的订单的传递和处理过程,整个过程还包括了交易和结果的递送。而报纸上的广告可以看作软件服务对外暴露的接口。
是谁让我们痛苦
按照厂商的宣传,SOA的好处主要有两种,一是解决异构问题。二是降低TCO(整体拥有成本)。
很多CIO最怕两件事,一是公司进行业务整合,二是公司开展新业务。因为对CIO来说,两件事都意味一个结果——持续熬夜加班。大多数的IT管理人员都经历过类似的噩梦,有人更将异构系统环境与需求的不断变化,看作多年来应用软件的两大“癌症”,使得软件从业人员长年累月陷入“修修补补、穷于应付”的工作状态,企业也根本无法做到对市场变化作出快速响应。
过去,应用软件基本上是按照业务流程逐一对应开发的,每一个应用自成体系、自立门户。因为每个应用自成体系,每开发一个新应用,就需要重开发一遍界面与数据展现,重写一遍业务代码,浪费了大量的时间和人力。
SOA则可以改变过去纵向开发应用的模式,将软件按照业务需求,定义成大小合适的“组件”,作为企业共享资源,随时调用。
同时,传统的软件升级对用户就意味着每三年来一次革命,不仅需耗费大量金钱,还会闹得人仰马翻。现有的ERP等企业软件几乎都是铁板一块,当某一点业务变化时,某一点功能需要调整时,必须全部升级,这不但造成升级成本太高,而且牵一发动全身,质量无法保证。而未来SOA构架下的企业软件就像是一个不断进化的生态过程,某些“服务(业务组件)”不断地局部升级,新的“服务”不断地加入,只有这样的系统才能真正做到快速适应业务变化。
事实果真如此的话,SOA可谓是解决CIO痛苦的大救星。CIO们的痛苦由来已久,每次供应商推出新的产品时,总会找到原有产品的不妥之处,劝说用户购买新的产品。于是,CIO们就在一次一次购买新产品的过程中解决原先的痛苦。当这些痛苦解决的差不多的时候,往往才突然发现自己手中已经多了三四家供应商的新产品。
SOA是否能改变这一局面,让CIO们从此跳出痛苦的怪圈,同时也不用在供应商一次一次的口号变更中更新自己的系统架构。
事实果真如此吗?让我们看一看IT的发展历史,也许能看出一些端倪。
与设备无关的电脑
IT技术的发展,几乎可以称之为一部开放与封闭交替的历史。
1975年到1985年,可以称之为争夺硬件设备的年代,也可以说是PC的辉煌年代。
1978年,第一届COMDEX FALL大展上展出了由苹果公司生产的APPLE机,拉开了PC时代的大幕。苹果(APPLE),这家草创于汽车库的公司,继推出第一代的苹果机后,随着又推出了苹果II型、III型电脑,销售额直线上升:1978年1500万美元,1979年7000万美元,1980年1.17亿美元,1981年3.35亿美元,1982年5.83亿美元。短短五年时间,苹果微型计算机公司就进入美国《幸福》杂志评选的500家主要公司行列。
巨大的利益引起了各方关注。1981年8月12日,IBM正式发布了历史上第一台个人PC,从此人类进入了个人电脑时代。
1982成为IBM PC展示其巨大魅力的演出年度。IBM原来预计在一年中售出241683台PC,然而用户的需求被大大低估了,实际上一个月的订货量就超出了预计。这一年IBM PC共生产了25万台,以每月2万台的速度迅速接近Apple II的产量。
采用开放的系统,是PC迅速称雄最关键的一步棋。第一台PC采用了总线技术和零散的部件(即“开放标准”),IBM还公开了PC除BIOS之外的全部技术资料,并通过分销商传递给最终用户。这一系列开放措施极大地促进了个人电脑的发展,同时也给兼容机制造商开辟了巨大的空间。
IBM在1983年3月8日发布了PC的改进型IBM PC/XT,凭借XT,IBM市场占有率超过76%,一举把Apple挤下微型电脑霸主的宝座,当时占领PC市场的除了IBM公司,还有7家小公司。由于IBM所占市场份额巨大,所以有人称PC市场是IBM和7个“小矮人”, IBM“蓝色巨人”的称号又一次叫响。
1985年10月,Intel推出16MHz 80386DX微处理器,当时,IBM已经收到大量286机器的订单,不愿立即转向386,同时IBM担心长期受制于Intel芯片,开始暗中开发自己的处理器,所以对是否采用386芯片不置可否。
有人把这一阶段的PC之争形容为与设备无关的电脑之争,厂家都在硬件设备上下功夫,维护自己在硬件设备领域的专利权成了这阶段厂商的主要目的。
而这时候的中国IT业界还处于启蒙阶段,值得称道的只有1984年联想公司的成立。
争霸PC市场
1985年到1995年,可以称之为争夺操作系统的时代。
1985年11月,在经历了多次延期之后,微软公司终于正式推出了Windows操作系统。
1986年9月,康柏比IBM更早推出它的基于16MHz Intel 80386的个人电脑Compaq Deskpro PC,兼容机开始领先于IBM PC,康柏的业绩在短短四年间跃入《财富》500强,并在1994年第一次超过IBM登上PC电脑的王座。
1987年4月,IBM推出基于386的IBM Personal System/2(PS/2)个人电脑系列。因开放标准而受到兼容机困扰的IBM,在Model 50以及更高配置的PS/2产品系列中,引进了不与其他设备兼容的微通道架构(Micro Channel Architecture,MCA)技术。
1988~1989依靠生产兼容机,康柏创下了最短时间业绩成长最快的纪录。康柏依靠386 PC的成功一炮打响,并坚持使用无需交纳许可使用费的行业标准总线,而不是IBM新推出的微通道总线。此后,PC行业进入了一个全新的发展阶段,IBM也逐渐失去了在PC行业占据的主导权。
在这一阶段中,因为采用开放的系统,PC市场得以迅速发展,同时也使IBM坐到了PC市场份额第一的宝座之上。也正是因为采用封闭的微通道架构,与开放的市场格格不入,才使IBM在后来的PC发展中落后。
1991年10月5日,来自芬兰的大学生Linus.Torvalds开发出了一种基于UNIX的操作系统—Linux,并且将源代码全部公开于互联网上,从而引发了席卷全世界的源代码开放运动,Linux本身在经过全世界无数程序员的改进后也逐渐成长为一个成熟的操作系统,并在全世界逐渐的流行开来。
1994年3月,Linux 1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后正式采用GPL协议。至此,Linux的代码开发进入良性循环,越来越多的人开始在自己的PC上尝试Linux操作系统。
与此同时,中国的计算机应用也进入了单机应用的时代。1993年3月2日,我国接入Internet的第一根专线,中科院高能物理研究所租用ATT公司的国际卫星接入美国斯坦福线性加速器中心的64K专线正式开通。
与操作系统无关的电脑
1995年有两件事最值得关注。
1月10日,IBM正式宣布:将以前各自独立的软件解决方案、个人软件产品和网络软件部门合并,组成一个软件集团,进入了软件市场的争霸之中,这一举动让这个以硬件著称的公司在十年后成为全球第二大的软件供应商。
1995年8月24日,微软公司正式向全世界推出了划时代的Windows95操作系统。这次发布微软采用了全球各地同时发布的办法,并斥资5亿美元作为宣传费用,创下了软件宣传费用的历史之最,而Windows95的发布,也开创了一个全新的Wintel联盟。
1996年10月28日,Intel和微软共同发布了自己的NC(NetComputer)标准,该标准即简化的PC,仍然使用操作系统和本地硬件系统。
这一阶段的争夺领域放到了操作系统上,利益和专利技术的维护转向了操作系统。
就在各个计算机公司都在墨守成规地发展CISC(复杂指令系统计算机)体系结构,都在诚惶诚恐地保护自己的专有技术,都在拼命抢夺PC市场的时候。Sun公司响亮地提出“网络就是计算机”的口号,开发面向网络的、可缩放的RISC(精简指令系统)体系结构和Unix操作系统,公开自己的技术标准。这些划时代的创举为Sun公司的发展奠定了坚实的基础,更为工业界确立了一种新型计算机——工作站的标准,使开放性成为计算机行业发展的强大动力。
RISC与CISC的争斗远远没有结束。直至现在,在高端服务器领域还有两种声音在进行着搏斗,依然是开放与封闭。在开放的阵营中,Intel、微软、众多Linux厂商们一直对用户高呼:过来吧,只有开放才能解救你们;而IBM、SUN等厂商却始终强调,他们的系统更加安全稳定,这才是关键业务的最佳选择。
在群雄逐鹿的IT世界里,开放成就了PC的辉煌。也成就了不少IT公司,而当有些IT公司有了独霸天下的意识后,关于硬件设备和操作系统的明争暗斗就屡见不鲜,见怪不怪了。有了做天下第一的心思以后,才会在自己的产品中加入障碍,降低了产品的兼容性。
这个时候,SOA高举着兼容的大旗出现了,仿佛是解决所有这些问题的救世主。
SOA不等于开放
几千年来,孔子的思想、观念、教化可以说是渗进每个华人的骨子里,不管你是出身名门望族也好,出身贫贱也好;是达官贵人也好,一介布衣也好,都被孔子的文化深深地影响和感染。
天下归一,天下大同是孔子的理想,SOA仿佛从骨子里有一种开放的趋势。也许当SOA代替了现有技术之后,IT世界的天下就可以大同了。
SOA的概念最初由Gartner公司提出,由于当时的技术水平和市场环境尚不具备真正实施SOA的条件,因此当时SOA并未引起人们的广泛关注,使SOA沉寂了一段时间。伴随着互联网的浪潮,越来越多的企业将业务转移到互联网领域,带动了电子商务的蓬勃发展。为了能够将公司的业务打包成独立的、具有很强伸缩性的基于互联网的服务,人们提出了Web服务的概念,这可以说是SOA的发端。
Web服务开始流行以后,互联网迅速出现了大量的基于不同平台和语言开发的Web服务组件。为了能够有效地对这些为数众多的组件进行管理,人们迫切需要找到一种新的面向服务的分布式Web计算架构。该架构要能够使这些由不同组织开发的Web服务能够相互学习和交互,保障安全以及兼顾复用性和可管理性。由此,人们重新找回面向服务的架构(Service-Oriented ArchITecture,SOA),并赋予其时代的特征。需求推动技术进步,正是这种强烈的市场需求,使得SOA再次成为人们关注的焦点。
看看SOA的诞生与发展,与互联网的发展密不可分。而互联网从诞生之日起就注定要与开放同行,没有开放,就没有互联网的蓬勃发展。没有开放,也就没有SOA的今天。
但是,不能因此这样我们就认为SOA就等于开放。应用了SOA就可以解决用户的所有困扰,SOA也并不意味着IT公司不再有争霸天下的野心,从此各个供应商所有的应用软件、操作系统、总线都可以无缝兼容。
不要忘了,在技术上设置重重障碍,妨碍兼容的正是如今高喊SOA口号的IT供应商们。每当电视上播放买××商品,就会为希望工程捐献1分钱的广告时。反思一下为什么商家不直接盖几所希望小学,而是通过这种方式搞促销。也许你就会想通,和设备之争、操作系统之争一样,SOA的实际上是另一个领域的又一轮争夺罢了。
享受SOA
IBM中国开发中心Web 2.0首席架构师毛新生对SOA有一个很有意思的比喻。
比如说到餐馆去点一道鱼香肉丝,这就是服务。做鱼香肉丝就属于业务处理能力,可是每一家餐馆所做的鱼香肉丝是不一样的,也就是服务质量不同。当顾客不满意这次服务时,如何解决这样的纠纷,需要餐馆经理来处理问题,是重新做一份还是免单,这就是业务策略。
这样一个简单的例子其实表明了在过去代码的时代所无法表达的内容。一个业务活动要有业务处理能力,有功能,同时有跟这个功能有关系的一些关于质量的要求,还需要有一些处理各种各样突发事件的业务策略。所有的这些东西融合在一起,就是对服务的描述。
和这个道理一样,服务是一种用户体现。包含在服务后面的人力、物力和一些互动过程用户不需要关心,只享受服务就可以了。而服务的提供者也需要制定一些标准来衡量服务质量,要考虑如何去处理突发问题。
比如制作鱼香肉丝,原料、厨师、配菜、侍者这些都由服务的提供者来提供,顾客不需要了解。顾客要做的,只要了解和服务的提供者之间的契约是怎么样的,包括价格、味道和当发生意外时,该怎样处理就可以了。服务呈现给用户的是一种可以提供给用户的完整的业务处理能力,由契约来约束服务的质量、服务方式等,这就是服务的内涵。
不可否认的是SOA是今后技术发展的必然趋势,软件即服务也是今后IT的发展方向。
业务人员不了解IT和技术,对他们来讲,只享受服务而不用去了解繁冗的IT技术是一种解脱。但是国内IT部门对自己定位偏向技术支持部门而不是服务支持部门也是不争的事实。SOA是面向服务的架构,从这个角度来说,也许SOA还有一段很长的路要走。但不管是你欢迎还是抵触,SOA终究是来了。
如一位CIO所说,目前看来SOA是未来的发展方向。但是也许在几年之内,会有一种新的技术或理念会代替SOA。
我们要做的,不管结果如何,享受这个过程。
SOA发展历程
回顾SOA发展历程,大致分为三个阶段。
1孕育阶段
这一阶段以XML技术为标志,时间大致从上世纪九十年代末到本世纪初。虽然这段时期很少提到SOA,但XML的出现无疑为SOA的兴起奠定了稳固的基石。
可扩展标记语言(Extensibl Markup Language,XML)系W3C所创建,源自流行的标准通用标记语言(Standard Generalised Markup Language,SGML),它在上世纪60年代后期就已存在。这种广泛使用的元语言,允许组织定义文档的元数据,实现企业内部和企业之间的电子数据交换。由于SGML比较复杂,实施成本很高,因此很长时间里只用于大公司之间,限制了它的推广和普及。
通过XML,开发人员摆脱了HTML语言的限制,可以将任何文档转换成XML格式,然后跨越互联网协议传输。借助XML转换语言(Extensible Stylesheet Language Transformation,XSLT),接受方可以很容易地解析和抽取XML的数据。这使得企业既能够将数据能够以一种统一的格式描述和交换,同时又不必负担SGML那样高的成本。事实上,XML实施成本几乎和HTML一样。
XML是SOA的基石。XML规定了服务之间以及服务内部数据交换的格式和结构。XSD Schemas 保障了消息数据的完整性和有效性,而XSLT使得不同的数据表达能沟通过Schema映射而互相通信。
2 发轫之初
2000年以后,人们普遍认识到基于公共——专有互联网之上的电子商务具有极大的发展潜力,因此需要创建一套全新的基于互联网的开放通信框架,以满足企业对电子商务中各分立系统之间通信的要求。于是,人们提出了Web服务的概念,希望通过将企业对外服务封装为基于统一标准的Web服务,实现异构系统之间的简单交互。这一时期,出现了三个著名的Web服务标准和规范:
◆简单对象访问协议(Simple Object Access Protocal,SOAP)
◆Web服务描述语言(Web Services Description Language,WSDL)
◆通用服务发现和集成协议(Universal Discovery Description and Integration,UUDI)
这三个标准可谓Web服务三剑客,极大地推动了Web服务的普及和发展。短短几年之间,互联网上出现了大量的Web服务,越来越多的网站和公司将其对外服务或业务接口封装成Web服务,有力地推动了电子商务和互联网的发展。Web服务也是互联网Web 2.0时代的一项重要特征。
3 成长阶段
从2005年开始,SOA推广和普及工作开始加速。不仅专家学者,几乎所有关心软件行业发展的人士都开始把目光投向SOA。一时间,SOA频频出现在各种技术媒体、新产品发布会和技术交流会上。
各大厂商也逐渐放弃成见,通过建立厂商间的协作组织共同努力制定中立的SOA标准。这一努力最重要的成果体现在3个重量级规范上:SCA/SDO/WS-Policy。SCA和SDO构成了SOA编程模型的基础,而WS-Policy建立了SOA组件之间安全交互的规范。这三个规范的发布,标志着SOA进入了实施阶段。
从整体架构角度看,人们已经把关注点从简单的Web服务拓展到面向服务体系架构的各个方面,包括安全、业务流程和事务处理等。
SOA将人员、信息和流程集成在一起
操作人员可以跨不同的数据库类型分布不同的数据域
与SOA有关的标准化组织
1、结构化信息标准促进组织(OASIS)
OASIS是一个非赢利的国际协会,致力于电子商务相关标准的制定和推广,也是目前制定Web服务标准最多的一个组织。除了制定通用的电子商务、Web服务和安全标准之外,OASIS还制定了很多针对行业的电子标准。OASIS理事会成员几乎全部来自微软、IBM、BEA system、Oracle、Sun、SAP AG、诺基亚等业界大公司。
2、开放SOA合作组织(OSOA)
OSOA是一个非正式的厂商联盟,使得各厂商能够共同开发一个语言中立的编程模型。该编程模型帮助企业软件开发人员能够最大限度地发挥SOA架构的特性和优势。目前加入OSOA的厂商包括IBM、BEA、SAP、Oracle等。尽管OSOA不是一个标准化组织,但由于有IBM、BEA等业界厂商的支持,它制定的规范很可能会成为事实上的标准。因此,我们可以把它看作一个准标准化组织。OSOA成立了两个项目组,分别负责制定SCA和SDO规范。
3、万维网联盟(W3C)
W3C成立于1994年,主要负责制定Web相关标准和规范,比如HTML、CSS等。W3C专门成立了Web服务专区,下辖六个工作组,负责制定Web服务相关的标准。W3C对Web服务的发展可谓功不可没,像非常著名的SOAP和WSDL皆出自于W3C。
4、Web服务互操作组织(WS-I)
WS-I是一个开放的厂商联盟,鼓励任何对Web服务有兴趣的厂商加盟并贡献自己的力量。 它主要致力于提升Web服务基于平台、操作系统和编程语言中立的互操作能力,其成员几乎覆盖了所有重量级厂商,如IBM、微软、Sun、Oracle和BEA等。
5、互联网工程任务组(IETF)
The IETF(因特网工程工作小组)是定义标准因特网操作协议(像TCP/IP)的团体,IETF接受国际互联网协会Internet架构委员会(Internet Architecture Board,IAB)的监督管理。IETF的成员分别来自于互联网协会的个人或者组织成员。
SOA的鼓噪之声
对于IT供应商,SOA是未来产品的发展方向,是不可能放弃的战场;对于用户来说,能够“随需应变”的SOA也许会带来与以往不同的应用模式,更加灵活、便利;对于国内的独立软件运营商来说,SOA也许是一个IT势力重新洗牌的机会。
汉末三国时期,魏、蜀、吴从他们自己立国图强、建立霸业的政治目的出发,都想得到荆州这块重要的战略之地。三方围绕荆州展开了激烈的争战,时而波澜壮阔,惊心动魄,时而又偃旗息鼓,暗中争斗。
现在,SOA俨然成了供应商眼中的荆州。得之,可得天下。各路人马为了SOA,开始了一轮或明或暗的争斗。
荆州之争
2007年的SOA市场一直很是活跃,IBM不仅以服务商的角色介入SOA,而且还在推广传播众多的SOA成功实施案例。
2006年底,IBM全球服务部开始围绕“服务产品化”这个核心进行转型。
IBM将基于基础架构访问服务、基础架构管理服务和基础架构支持服务三大服务产品群分为十条服务产品线。
IBM全球信息科技服务部服务产品事业群基础架构访问服务暨合作联盟大中华区总经理徐辉认为IBM在服务转型上实际上就是一个SOA的尝试。
徐辉说,在IBM的十条服务产品线里,包括了一百多种客户需要的服务产品,以及下面更多的服务产品组件,这些大多是提炼出来的、具有自主知识产权的、可以重复使用的,这就是SOA的理念。IBM可以通过方案的架构师、通过行业顾问了解客户的需求是什么,通过这些服务产品的组合,达到一个整合业务的目的来帮助客户实现他们的业务目标。IBM自身的以服务产品为导向的转型恰好是SOA很好的说明。
BEA公司将自身定位于SOA平台提供商,并推出一系列产品和方案。
与此同时,Oracle正在忙于实现称为OracleFusion的软件集成事业。这是在过去四年中近30笔收购的结果,不仅如此,Oracle还承诺在2008年初推出完全基于Java和支持SOA的商业应用堆栈。
2007年SAP将完成旗下所有软件应用转移到SOA之上,部份新版软件已经出货,并预计于2007年完成所有软件的改写。SAP凭借NetWeaver策略,力图向客户证明它的SOA功能上比Oracle更胜一筹。
不仅这些国际供应商在SOA市场表现活跃,国内的软件厂商也不甘落后。普元、东方通、锐易特,都在以其中间件产品为SOA化着陆点。
中国工程院院士倪光南一直对SOA青睐有加,2007年5月29日SOA国际标准在北京路演时,倪院士把SOA标准与构件技术结合比喻成一颗 “银弹”。
值得注意的是,目前这个领域还没有出现垄断性的力量。从这个角度说,SOA是中国中间件软件乃至软件行业的一个市场机会,因为SOA很可能将推动软件产业一次新的结构性变化,将会涌现新的赢家、新的垄断势力、新的技术领袖,重新划分IT势力。
得标准者可得天下
早在2005年11月,IBM、BEA、Oracle、SAP等公司就曾共同发布了SOA的技术规范:服务构件架构(SCA)和服务数据对象(SDO)。
5月29日,随着倪光南院士、普元软件CEO刘亚东、OSOA专家Edward Cobb和Oracle公司SOA资深工程师Jeff Mischkinsky掀开SCA和SDO全球路演的幕布,SOA国际标准正式登陆中国。
对此,为SOA终于有了国际标准欢喜雀跃的有之,提出反对意见的也有不少。
有人说,SCA/SDO目前还只能称为规范而不是标准。SOA的技术架构没有标准,但SOA有相关技术标准。如果OASIS将SCA/SDO规范提交给ISO组织或国际电联,获得通过之后才能成为标准。
也有人说,其实SOA的架构没有标准。SCA不是SOA的标准,而是编程模式,在SOA环境中的一种新编程模式。对于把SCA说成SOA国际标准,这其中有很大的炒作成分。
IBM中国开发中心Web 2.0首席架构师毛新生认为SOA强调开放,在自己的框架内,都可以制造自己的服务组件。有了标准,所有服务组件和所支持的服务都可以无缝地集成和应用。SCA是处理能力的规范,SDO是组件之间相互交流的规范。在访问不同的数据源时,通过标准化的方式提高交互能力。SCA/SDO作为组件模型,虽然没有成为正式标准,但一直在供应商的产品中应用,已经经过行业的检测和洗礼。
对此,长风联盟秘书长、北京软件与信息服务业促进中心副主任肖澜则认为,目前SOA还是停留在理念层面,SOA的技术和标准还远未成形,SOA的标准之路仍然漫长,还需要3~5年甚至8~10年的时间才能真正成熟,而不像很多厂商所宣传的SOA已经到了实施阶段。更确切地说,大家都还处于摸索阶段,就算已经有项目开始实施,也是摸着石头过河。
长风联盟曾经发布了《SOA推进战略白皮书》,希望通过白皮书能为中国软件产业更好把握SOA带来的巨大机遇、促进产业格局全面调整、实现产业的整体突破与提升提供参考与借鉴。
SOA真的来了吗?
据IDC《2007年中国企业SOA应用调查》显示,超过77%接受调查的中国企业开始考虑或着手实现SOA架构。具有前瞻性的公司正在跨越功能和部门来拓展他们的SOA实施,最终将涵盖整个企业甚至他们的合作伙伴、供应商和客户。
而另一份调查结果显然没有这么乐观。SearchOracle.com调查了683位分布在各行各业、在IT决策过程中有一定发言权的IT专家,发现84%的受访者没有实现任何的SOA技术。其中,48%的受访者表示他们计划在未来三年中实施SOA,然而其他的半数受访者表示他们不知道他们的公司是否或者合适将进入SOA的世界。
对于目前SOA市场,不同立场的人有不同的理解。
北京锐易特软件技术有限公司技术总监李轶强认为用户对SOA都会觉得是一个很美好的蓝图,但一旦到了很实际的实施阶段,就会出现一些问题,让用户感到困惑。所以SOA在中国现在还是初级阶段,要考虑怎么落地的问题。
毛新生认为SOA现在已经不是概念普及阶段,大家早已经清楚SOA的概念是什么。现在,SOA是未来的发展趋势,已经成为共识。用户对SOA的疑问集中在怎样实施,服务力度怎么样,如何标示等操作层面的问题。
赛迪顾问分析师张曦表示,目前不能对SOA市场盲目乐观。张曦对SOA的前景,给予了肯定的态度。他说,对于用户和企业来说,软件都标准化了,开发成本和使用成本都会降低,SOA肯定是未来发展的趋势,只是没有数据显示的那么乐观。
用户对SOA,又爱又怕的心理恐怕是难免的。喜的是SOA能为他们解决困扰多年的整合问题,灵活变通的形式也让人喜闻乐见。忧的是SOA毕竟是新鲜事务,勇于做第一个吃螃蟹的人难免要承担风险。
“目前SOA市场成熟度有待提高。我更期待的是典型案例,如果有比较成熟的行业应用案例出现,哪怕是不同行业,也可以作为参考,”雅昌企业集团信息总监游卫东说。
提到SOA,中国石化信息系统管理部教授级高工吴正宏说:“我们一直在跟踪这个领域,但我们关注的是集成。”
谈到现在供应商提供的SOA产品,吴正宏认为严格地来讲,完全符合SOA架构的产品还没有。去年,供应商提供的产品大都是基于ESB(企业服务总线)上改造的。今年虽然不少供应商都推出了基于SOA架构的产品,但是还不成熟。
中石化关注SOA是从2000年左右开始的,目前也是尝试在做小规模的开发,没有计划把所有的系统都结合在一起,担心这样反而会有安全和管理方面的麻烦。目前考虑的规划都是从业务角度出发,再考虑用什么样的技术,而不会为SOA而SOA。 作者:石菲