服务器在线11月13日报道 人们之所以关心SOA,是因为 SOA具有直接和间接影响信息管理系统的能力。SOA能帮助企业实现业务与IT同步,有效降低成本,提高灵活性,从而提升竞争优势。为了获得成功,人们需要在业务服务所涉及的信息的上下文中对其进行考虑,人们需要知道检索到的信息是准确的。被更新的信息经过了验证。交换的信息的意义对于服务提供者和使用者都是一样的。如果忽略了这些事情,服务的价值和可重用性就会减少。 SOA的最终目的就是寻找现有服务,对其进行调整,并加以使用。然后对其中一些服务进行共享。帮助创建一个生态系统,以便在将来能更快地装配更多有意义的解决方案越来越多的客户在问,如何通过采取财务上无可非议的渐进步骤,打造当今随需应变业务环境所需的敏捷 IT 基础设施,从而提高业务流程的灵活性。通过采用面向服务架构(SOA),公司具备实现业务灵活性所需的技能、软件和经验。
SOA(Service-Oriented Architecture)既服务导向架构,是指为了解决在inernet环境下业务集成的需要,通过连接能完成特定任务的独立功能实现的一种软件系统架构。该定义的学术味道较浓,但其核心思想并不难理解:让应用不受限于技术,让企业轻松应对商业服务变化和发展的需要。目前,SOA的实现手段主要包括:Web Serice(网络服务)、CORBA和JINI等。。
开始采用SOA与采用任何其他技术或体系结构没有什么区别。可以通过常识来看这个问题:如果用户的项目处于十分关键的位置,而拥护的团队必须投入大量精力学习工具和 API,它就有可能是错误的选择。相反,如果用户可以在小项目中试用 SOA,则是不错的选择。利用这一类经验,架构师可以帮助用户定义和扩展到下一个更大的项目。不容忽视的关键就是:SOA的各种实施都遵从"循序渐进"的法则。
Gartner Group曾经说到2008年,SOA将成为占有绝对优势的软件工程实践方法,它将很可能结束传统的整体软件体系架构长达40 年的统治地位,届时将有70%的企业在进行IT建设时会转向SOA。因此Gartner建议,主流企业现在就应该在理解和应用SOA开发技能方面进行投资,但实际情况又如何呢?到目前为止,绝大部分企业客户还处于计划或早期实施阶段,它们仍在等待从厂商那里获得更多的Web服务工具和平台。
对 SOA 的需要来源于需要使业务 IT 系统变得更加灵活,以适应业务中的改变。通过允许强定义的关系和依然灵活的特定实现,IT 系统既可以利用现有系统的功能,又可以准备在以后做一些改变来满足它们之间交互的需要。
改变和 SOA 系统适应改变的能力是最重要的部分。对于开发人员来说,这样的改变无论是在他们工作的范围之内还是在他们工作的范围之外都有可能发生,这取决于是否有改变需要知道接口是如何定义的以及它们相互之间如何进行交互。与开发人员不同的是,架构师的作用就是引起对 SOA 模型大的改变。这种分工,就是让开发人员集中精力于创建作为服务定义的功能单元,而让架构师和建模人员集中精力于如何将这些单元适当地组织在一起。
面向服务的分析和设计工作的主要输出是一个服务模型(即先前所说的服务规范)和一个设计模型,服务模型记录了面向服务的系统中所有重要的体系结构部件,而设计模型则进一步阐述了服务模型应如何实现的细节。这两个模型对 SOA设计进行了全面说明,开发者可以据此明白无误地执行这一实现。它是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。SOA在本质上就是一个面向服务的架构,是一个基础。如果是在设计一个系统的时候,就把这个思路理念放在这里面,那么,所设计的东西不是说为了写这块程序而写这块程序,而是以应用出发点来考虑这个问题。
对于一个公司来说,采用了SOA架构,使得流程得到简化,使得公司的业务流程更灵活了。灵活化之后,就会有新的业务要发展。而SOA可以很快把一些服务重新拼组,形成一个流程,然后来实现它的业务的转型。
SOA,它的意义在于什么呢?就是在于它最终把业务流程通过服务器很好地连接在一起,当业务流程、模式有了变化的时候,可以通过IT迅速加以实现。借助SOA架构,就是要产生差异化竞争的优势,使得企业高速成长。
回过头来看过去的20多年,我们大致分成这么两个阶段,前十年的时候,业务层面上做的主要是业务流程再造的工作,IT与之相对应的就是在企业里面普及ERP为代表的各种各样广泛的企业级各种IT的应用。那个时候主要目标是提高效率降低成本。从新世纪开始这十年,从业务上讲是一个像业务网络的变革,与之相对应的技术就是我们叫做企业级的面向服务的架构。什么是业务网络呢?即强调企业不再是一个单独的一家企业,而是要与它的合作伙伴、供应商、客户,甚至在某种情况下与他的竞争对手形成一个有机的生态链,怎么样在这个生态环境当中使自己处在最有利的地位,使之成功。IT大的战略就是企业级的面向 SOA的架构,因为一个企业无论是通过外包,或者是通过改善业务流程,目的都是要提高企业网络的效率,同时也涉及到使企业业务的价值网之间如何创新,而SOA正是为此提供了一个非常好的架构。
真正SOA的价值最终是体现在企业级应用层次上的,SOA最终的一个理想是能够把一个业务流程有机地、迅速地转变为一些IT的模块,通过这些服务模块来实现企业特定的SOA。当企业发生变化的时候,相应的IT也可以很快的配合上来,这是SOA真正最价值的地方。
实际上,SOA并不是一个全新的概念。很长一段时间以来,IT部门一直都试图将各种企业应用集成在一起。EAI(企业应用集成)和B2B商务集成拥有同样的目标。多数情况下,以前的应用都是专有的,实施的是紧密耦合的应用集成。在快速发展的当今世界里,这种集成通常不够灵活和便捷。
Web逐渐成为在线通信标准之后,SOA取得了很大的突破,使企业可以利用广为部署的标准协议,包括简单对象访问协议(SOAP)的Web服务标准,通用说明、识别和集成(UDDI)以及Web服务说明语言(WSDL),实现不同软件应用之间的互操作性。SOA的最终目标是,无论设备的物理位置在哪里,无论使用的是哪种初始编程语言、操作系统或网络,都能够以按需"服务"的方式,为处于全球任何地方的任何其它应用提供支持Web服务的软件功能。
这种模式的最大优点是,由于几乎所有应用都能通过标准消息格式访问应用功能,因此,SOA能够提升业务价值,提高IT效率。