基于J2EE体系架构搭建符合SOA架构的运营管理平台 1 SOA架构 1.1 IT 架构的演变 下图展示了IT架构的演变趋势可以看出,面向服务的体系结构(service-oriented architecture,SOA)是目前最先进的IT体系架构,是所有厂商搭建软件产品的必然选择。 1.2 SOA 概念 首先SOA 是一个概念或者说是一个模型,下图是它体系结构最简单的描述。它的思路是把一些功能集成一个独立的服务,以服务的形式为客户或其他服务调用。它应该是计算机软件技术特别是基于Web 计算技术发展到一个阶段的一个新的思想,一个构建整个系统的一个新的思想或者也可以说是新的一个方式,但它仅仅是一个概念或模型,它只是在宏观上描述了一个基本路线,其中以服务为最小模块的概念是最重要的、最具前瞻性的,也可能体现了未来软件发展的方向。 目前,SOA的通用定义为:SOA是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。 SOA涉及三种角色:1)服务提供者(Service Provider);2)服务请求者(Service Requestor);3)服务目录 (Service Registry)。 SOA涉及三个操作:1)发布(Publish);2)查找(Find);3)绑定(Bind)。 1.3 SOA 特征 可重用 一个服务创建后能用于多个应用和业务流程。 松耦合 服务请求者到服务提供者的绑定与服务之间应该是松耦合的。因此,服务请求者不需要知道服务提供者实现的技术细节,例如程序语言、底层平台等等。 明确定义的接口 服务交互必须是明确定义的。Web服务描述语言(Web Services Description Language,WSDL)是用于描述服务请求者所要求的绑定到服务提供者的细节。WSDL不包括服务实现的任何技术细节。服务请求者不知道也不关心服务究竟是由哪种程序设计语言编写的。 无状态的服务设计 服务应该是独立的、自包含的请求,在实现时它不需要获取从一个请求到另一个请求的信息或状态。服务不应该依赖于其他服务的上下文和状态。当产生依赖时,它们可以定义成通用业务流程、函数和数据模型。 基于开放标准 当前SOA的实现形式是Web服务,基于的是公开的W3C及其他公认标准。采用第一代Web服务定义的SOAP、WSDL和 UDDI以及第二代Web服务定义的WS-*来实现SOA。 2 Web服务介...