小议SOA与信息化的春秋战国时代解读

时间:2022-04-20 11:31:00

导语:小议SOA与信息化的春秋战国时代解读一文来源于网友上传,不代表本站观点,若需要原创文章可咨询客服老师,欢迎参考。

小议SOA与信息化的春秋战国时代解读

【摘要】近十多年来,我国的信息化得到了迅猛发展,但同时“信息孤岛”问题也日益显现,犹如“春秋时代”的各国分踞。本文将通过生动形象的对比,深入浅出的介绍面向服务的体系结构(soa)的基本思想、主要方法和在资源整合中所起的作用。

【关键字】SOA;信息孤岛;服务;资源整合

二十一世纪是一个信息的时代,在我们的身边充满了各式各样的信息以及和这些信息相关的技术和产品,我们在改变信息也同时被信息所改变着,几乎所有人都能感受到这样的变化。但是必须认识到的是信息化仍处于发展的进程中,信息化在给我们带来日新月异的惊喜时,也同样被无形壁垒(如:制度、技术和标准等等)给分据了,这就产生了信息化“诸侯纷争”的局面。

如果了解一下历史上的春秋战国时代,我们发现春秋战国时期七国割据造成了极大的贸易壁垒,利用市场经济的知识我们能够理解缺少贸易就会导致缺少信息的沟通,从而造成社会进步和经济发展的滞缓。而造成当时这一局面的原因除了政治因素之外,可能最为重要的还是在于缺乏一个合理的社会结构。历史总是在不断的重复(当然不会是简单的重复),如今我们虽然进入了一个信息的时代,但是同样的问题依然困扰着我们,缺乏能够实现资源共享的信息结构已经越来越成为我们信息化建设的屏障,信息化建设应该考虑从以前“快”字当头的初级阶段转向“好”字当头的发展阶段。

那么如何来应对和解决当前信息化所遇到的“春秋战国”的问题呢?我想历史的经验应该是可以借鉴的。我们基于不同结构和标准所建立的一个个信息化“孤岛”就如当年的群雄纷争的七国,最终秦始皇脱颖而出一统天下,而他做的最大的贡献就是统一了社会结构和度量衡。当然通过纯粹的暴力手段来建立框架(国家)是不稳定的(秦国很快的灭亡就是范例)。所以信息化严重缺乏对成、共享和集成的今天,资源整合势在必行,而我们需要做的事情更应该是通过识别共同目标来建立一个可行的技术结构,各方在这个结构框架下逐步达成共识并形成规范,并在未来相互协作的过程中更多的遵循这一规范(将自己特殊的部分隐含起来),而大家都通过服务的方式进行交互应该是一个不错的选择,这也就是面向服务的体系结构(SOA,Service-orientedArchitecture)出现的原因。

首先来了解SOA究竟为何物?本质上SOA是一种方法,它将已有的个性化的业务需求以及这些业务的具体实现(如:软件)包装成为服务,服务可以进行排列组合以实现新的业务,并且能够进行方便快速的部署,从而加强了供应商、合作伙伴以及客户之间的联系。其实我们可以简单的把SOA理解为解决问题的方法,它帮助一方能够方便的提出需求,而另一方能够快速的满足这个需求。生活当中,我们吃面包可能就是一个需求,而卖面包给你就是一个服务;在人事系统中,查询一个人的档案可能是一个需求,而提供查询结果就是一个服务。我们不需要知道面包是如何做出来的,只要觉得好吃就可以了;同样我们也不需要知道档案是怎么收集和存放的,只要觉得信息完整和可信就可以了。这就是SOA,它是由不同的参与角色在不同的层面来实现的。

那么,在信息化的“春秋战国”,SOA将如何来实现统一大业的呢?

一、松散耦合

春秋战国时期,七国在统一之前都是各自为政,各自搞一套度量体制,相互之间的贸易往来非常的不便,导致的结果就是经济发展比较落后。后秦灭六国统一了度量衡,实行了帝王制,虽然诸侯在各自的领土范围内保持者一定的权力,但是相互之间的交流却变得更为流畅了(要知道之前仅一个“剑”字就有很多种写法)。用SOA的概念来解释就是从原来的“信息孤岛”变成了松散耦合。SOA就是将原来分布在不同系统(七国)中的功能(政权)从其组织结构(各国政府)中抽取出来,封装成为一定粒度的服务,每种服务都能够清晰地表示其业务价值(帝王诸侯制),WebService技术则保障了这些服务将以松散耦合的形式关联(贸易往来),服务内部的变化不会对其它服务产生影响(度量衡保证了交易的一致性)。

二、建立标准

秦始皇做得最大的贡献就是统一度量衡,这为贸易的发展起到了至关重要的推动作用。SOA也是基于标准的,与其它的标准不同的是SOA的标准是基于分布式的、松耦合的,具有良好的夸平台性,这与先前我们所了解的CORBA和DCOM有所不同。SOA要求参与各方都遵循事先约定的规范来创建、注册和使用服务,所以标准其实也是相对的,参与者多了才会形成标准,但是如果要吸引更多的组织加入,SOA完全具备了这样的潜力。不过与秦始皇靠暴利手段建立标准不同,SOA靠的是其可发展性和广泛的认同性,这将注定SOA的发展过程是漫长(相对暴利创建的速度而言)的但是稳定的(通过暴利创建的总是难以维持)。

三、需求驱动

SOA是一种企业架构,因此,它是从企业的需求开始的。市场经济的环境已经充分向我们展示了“有需求就有服务”,这正说明了服务都是以需求驱动的,不管是正需求还是负需求。从本质上说,在抽象层次上,服务位于业务和技术中间,所以面向服务的架构设计师一方面必须理解在业务需求和可以提供的服务之间的动态关系,另一方面,同样要理解服务与提供这些服务的底层技术之间的关系。秦始皇的统一霸业也是需求驱动的,只不过是基于领土争夺的需求,也可能是一己私欲,但是无论如何这与SOA的需求驱动是孑然不同的,SOA更多的考虑的是如果提供基于需求的服务,而不是霸占和掠夺。在SOA的需求驱动中,共享和集成是主角,服务只是手段。

四、关注变化

既然SOA是基于需求驱动的,那么我们就必须认识到需求实在变化的,所以必须提供响应变化需求的能力是新的“元需求”,而不是处理一些业务上的固定不变的需求。从硬件系统而上的整个架构都必须满足业务敏捷的需求,因为,在SOA中任何的瓶颈都会影响到整个IT环境的灵活性。SOA工作的场景,更像是一个活的生物体,而不是像传统所说的“盖一栋房子”。IT环境唯一不变的就是变化,因此面向服务架构设计师的工作永远不会结束。对于习惯于盖房子的设计师来说,要转向设计一个活的生物体要求崭新的思维方式。如下文所写的,SOA的基础还是一些类似的架构准则。秦最终走向灭亡的根本原因在于没有意识到统一六国后需求已经发生变化,没有及时根据新的需求(民生需求)做出调整,从而才有火烧阿房宫的惨剧。但是SOA从出现的那天起就已经意识到了这点,所以SOA天生就是基于模型驱动架构(MDA)和敏捷方法(AM),技术专家可以根据变化的需求迅速而有效地做出应变。

其实SOA并非什么新的概念,当我们开始逐步了解它的时候可能就会发现很多的概念和技术我们早已在使用,所以更重要的改变可能来自于我们的思想和我们的认识,而采取更为开放的合作将是未来的趋势。

正如秦灭六国所带来的意义远非政治和疆土上的统一,更为重要的是此举打通了全中国领域内的流通贸易,为后来社会和经济的发展创造了良好的条件。相对于秦始皇完成了中国的地域整合,SOA则肩负着资源整合的重任,其所带来的也将不会仅仅只是IT技术的变革,更为重要的是它将为企业提高组织战略意义上的核心价值提供IT的帮助,为今后基于信息化的社会和经济发展打好基础。

参考文献

【1】JasonBloomberg,面向服务架构(SOA)的原则,,2007

【2】IBM商业价值研究院,SOA:面向服务的体系结构-企业投资回报评测实用指南,2007

【3】IBM,IBM’sSOAFoundationAnArchitecturalIntroductionandOverviewVersion1.0,2007

【4】OlafZimmermann,面向服务的分析与设计原理,IBMDeveloperWorks,2007

【5】ThomasErl,SOA概念、技术与设计,机械工业出版社,2007