据IDC预测:Web服务必将是分布式应用程序的主导架构,SOA的市场需求平均以94%复合增长率而高速成长,在未来10年,Web服务项目的总投入将达到1840亿美元。与此同时,IBM、BEA、甲骨文等等的中间件厂商关于SOA的实施案例、实施步骤建议也在今年纷纷出台,渐渐形成SOA似乎势不可挡的态势。
而与国外厂商的热捧形成的鲜明对比的是,中国的中间件厂商,似乎对SOA并不那么狂热,而是在理性地埋头做着一些事情,这个市场的冷与热究竟是怎么回事?这个宣称是未来软件产业的革命对于中国企业来说是否是很好的突围机会?
SOA冷思考
SOA(Service Oriented Architecture服务导向架构)作为一种技术概念从四、五年前开始被提出来,由于面向用户,提供更高弹性、更高效率及信息整合的IT环境而被业界不断看好。软件集团大中华区Webspere软件总经理李永财说:“从IBM角度来讲SOA不仅仅是一个技术层面的概念和架构,更多地强调以业务为中心的架构设计方法。”
有评论说,SOA是软件工程和软件产业的一次自我变革和扬弃,它将迫使软件技术人员站在用户的业务视角上工作,将高深莫测的软件开发转化为“服务”业务的相应实现,将软件专业语言转换为现实业务语言,打破软件领域的技术壁垒和神秘感,甚至最终会把用户的业务人员改造成软件系统的架构师。那时,软件产业将告别“阳春白雪”成为一个名副其实的现代服务产业。
几年前,各大软件厂商对于SOA的热捧还主要是集中于概念炒作阶段。进入今年以来,IBM、BEA、甲骨文等一批软件厂商开始推出了一些实施方案并部署了一些成功案例,使得SOA进入现实的脚步在不断加快。
尽管SOA被纷纷看好,而且也有部分的成功案例推出、相关产品问世。但是也有专家认为,SOA作为一个具有发展前景的应用系统架构,尚存在许多有待改进的地方,例如在可靠性、安全性、编制(Orchestration)、遗留系统(Legacy support)支持和语义(Semantics)方面均还存在严重不足。以可靠性为例,在不可否认性(non-repudiation)、消息一定会被传送且仅传送一次(once-and-only-once delivery)以及事务撤回(rollback)等问题上,SOA还没有做好准备。
现有的基于交易中间件、消息中间件的解决方案,较好地满足了应用系统在性能、服务质量和安全性等几个方面的需求。但在SOA环境中,其应用组件之间是一种松耦合的关系,要让一个应用软件的组件,很容易去跟属于不同应用的软件组件进行对话,如何确保这些迥然不同,但又相互连接的系统的效率、可靠性、可控性和安全性,就复杂得多了,是SOA还没有最终解决好的问题。这些都影响了SOA的实际实施和推广。
中创软件商用中间件公司总经理刘江宁认为,以前中间件是以技术作为驱动,但是现在业务已经成为中间件技术和产品发展的驱动力。SOA技术和Web服务技术的发展,使得中间件已经摆脱了纯粹的技术影响,更多地加入了业务特性。在逐步向上与业务系统靠拢的过程中,中间件逐渐成为原来业务系统的共性平台。SOA概念的提出就是为了解决动态的B2B业务整合的问题。虽然SOA已成为一个趋势,但目前国内还没有达到规模化的推广应用阶段。
国防科技大学教授王怀民说:“SOA其实是由于Web技术传播的成功,将Web服务进行了更大范围的拓展,一方面是源于技术的驱动,另一方面是由于厂商需要找到新的技术市场的原因驱使。应该说SOA更易于培训更易于更广泛的推广,同时也更接近用户,而且在未来的技术发展上将有可能对生化信息服务有积极的推进作用。
但是如果用SOA去解决互联网上的问题,又觉得他过于复杂了,如果让SOA去解决分布式应用的问题,他又不能完全解决。在某种意义上,SOA其实是厂商们的一种新的营销模式,是新壶装旧酒,对于国外厂商来说,他们原来的积货很多,所以推广很积极,同时通过这种深度推广获得用户和市场的支持,当然将来必然也会对自己的软件的革新和改造带来良性的互动”。