转自比特网
随着企业信息化建设的不断加强和计算机技术的快速发展,以及互联网的应用,加强了企业内部和企业之间的信息交流,由于目前我国很多大中型企业部署的应用系统是由不同的企业生产的,这些产品在开发时采用不同的编程语言和实现平台,采用的数据交换格式和通信协议存在差异,因而使得企业在不同系统间实现信息互相传递与共享非常困难,对原有应用系统与实施的新应用系统不能进行有效集成,在企业中形成了一个个“信息孤岛”。
传统的企业应用集成方法按集成层次分为数据集成、业务流程集成和面向服务的集成。其中数据集成实现了数据的规范化,但是不是其他应用能共享的格式,扩展困难;业务流程集成通过中间件技术集成了多个业务流程层,但是它只在企业内部进行,不适应企业间业务流程组合。这些集成方法不具备灵活性,而且集成方法复杂、成本高。现在企业竞争激烈,企业业务在快速增长并不断变化,要适应这种发展必须采取一种脱离面向技术的解决方案,在企业新增应用系统时,不需要再从底层技术去开发。基于面向服务架构(Service Oriented Architecture,SOA)的企业应用系统集成,提供了一个统一的、标准化的、可配置的业务集成平台,可以解决不同类型的异构系统之间难以有效整合的问题。
1 SOA的技术基础与Web服务
SOA是一种体系架构,它说明了一种设计思想,那么在具体应用中需要用现有的技术来实现SOA。现阶段,在软件的实现上,SOA的服务主要利用Web服务(Web Services)实现;在服务的编排方面,利用业务过程执行语言(Business Process Exeution Language,BPEL)实现;在服务的通讯方面,利用企业服务总线(Enterprise Service Bus,ESB)实现。所以,我们一般认为Web Services、BPEL和ESB是实现SOA的技术基础。
目前实现SOA的最主要手段是Web服务。Web服务是基于XML和HTTPS的一种服务,其通信协议主要基于SOAP,用WSDL进行服务描述,通过UDDI来发现和获得服务的元数据,它能在现有各种不同平台的基础上构建一个通用的、与平台无关、与语言无关的技术层。各种不同平台的应用程序都可以通过这个技术层来实现彼此间的信息交换和集成。
2 Web服务的体系结构
Web服务是一种部署在Web上的对象或组件,它是基于服务提供者、服务请求者和服务注册中心3个角色并由发布、查找、绑定和调用3个动作构建。
在Web的服务体系中,3个角色的作用分别为:服务注册中心用于注册已经发布的服务提供者,对其分类,并提供搜索服务;服务请求者是服务的使用者,它可以通过服务注册中心来寻找自己所需要的服务,然后调用该服务;服务提供者是服务的所有者,它发布自己的服务,对使用自身服务的请求进行响应。
3个动作的作用分别为:发布是使服务提供者向服务注册中心注册自己的功能及访问接口;查找是服务请求者向服务注册中心查找特定种类的服务;绑定和调用是使服务请求者能够使用服务提供者所提供的服务。
3 Web服务的核心技术
3.1 XML
可扩展标记语言(Extensible Markup Language,XML)是W3C制定的可扩展的文本标记语言,它可以作为定义数据描述语言的语言,如标记语法或词汇、交换格式和通信协议,用来实现企业内部和企业之间的电子数据交换。它具有内容与形式分离、良好的扩展性、良好的跨平台移植性和良好的自描述性等特点,而且XML是Web服务平台中表示数据的基本格式,与HTTP甲构成了Web服务的主要技术基础。
3.2 WSDL
Web服务描述语言(Web Services Description Language,WSDL)是描述服务的基础规范,描述了Web服务的调用接口。WSDL是由Microsoft和IBM合作开发的一种基于XML的协议语言,用来定义Web服务并描述如何访问这些服务;它是基于XML的语言,它用于描述Web服务及其函数、参数和返回值。因为是基于XML的,所以WSDL既是机器可阅读的,又是人可阅读的。
WSDL为各种各样的消息交互模式提供了支持,它支持没有响应的单向输入消息,请求伸应,以及带响应或不带响应的单向发送,其中后两种模式使服务能够指定它需要的其他服务。
3.3 SOAP
简单对象访问协议(Simple Object Access Protocol,SOAP)用于Web Service调用XML消息。SOAP是一个基于XML的,用于分布式计算环境下数据交换的简单、轻量级协议。Web服务使用SOAP作为它的标准通信协议。因为SOA是平台无关和厂商无关的标准,因此尽管SOA并不必须使用SOAP,但在带有单独IT基础架构的合作伙伴之间的松耦合互操作中SOAP仍然是支持服务调用的最好方法。
3.4 UDDI
统一描述、发现和集成协议(Universal Description,Discovery and Integration,UDDI)是Web服务架构下的服务描述、发现和集成机制。UDDI规范定义了一个发布和发现有关Web服务信息的标准方法,UDDI相当于Web服务在Internet中的注册中心,所有在其中注册了的Web服务都可以被整个Internet中的客户程序所知道。UDDI指定了一种机制,对于Web服务提供商来说,该机制可以公布Web服务的存在,对于Web服务的使用者来说,该机制可以定位感兴趣的Web服务。
UDDl分为3种类型:(1)私有UDDI服务注册中心,它描述了一个组织内部可见的服务;(2)专有UDDI服务注册中心,它描述了一个或多个组织可见的服务;(3)公有UDDI服务注册中心,它描述了公共可见的服务。在具体应用中可以根据需要选择不同种类的UDDI服务注册中心。
4面向服务的应用集成模型框架
在该框架中,我们看到它包含以下几个层次。
a.表示层。
该层由企业门户和企业应用程序构成。企业门户为客户提供服务,向不同的客户提供不同的访问方式和认证授权,通过调用不同的Web服务,客户得到自己需要的信息;企业应用程序是企业内部使用的应用程序系统。
b.业务层。
该层是企业所有业务的逻辑集合,它是通过面向服务的业务流程执行语言(WS—BPEL语言)进行业务流程描述。其中OASIS标准组织已将Business Process Execution Language(BPEL)定义为基于标准的方法,使用该方法可以编排由服务构成的业务流程。2007年,WS—BPEL 2.0被批准为标准语言。作为一种执行语言,WS—BPEL定义了如何表示业务流程中的活动,以及流控制逻辑、数据、消息相关性和异常处理等。
业务层将存在的Web服务操作连接,按照特定的规则统一描述到某个业务流程中,将粗粒度服务编排和组合成企业不同的业务流程,实现动态化。业务过程描述文档中包含了它要使用的服务的引用(如:服务名称、使用服务的地址和WSDL文档的存放位置),BPEL文档中标明了每个服务的使用顺序。业务层中还有能理解WS—BPEL过程描述文档的工作流引擎,该引擎负责按顺序或必要的逻辑来使用服务。
c.服务层。
该层是业务层的一个平台,定义了总线提供的细粒度的API接口,通过Web Services封装只是将API用基于XML的WSDL重新描述,但是服务仍然是细粒度的,而服务引擎(Service Engine)代表了粗粒度服务的实现,它使用原有系统的API重新组合成具有更粗粒度的服务。
d.集成层。
该层是通过企业服务总线(ESB)来实现,企业服务总线描述服务的元数据和服务注册管理;在服务请求者和提供者之间传递数据及对这些数据进行转换,并支持同步模式和异步模式等。企业服务总线提供基于标准的连接服务,将应用中实现的功能或者数据资源转化为服务请求者能以标准的方式来访问的服务。企业服务总线(ESB)是SOA的基础架构,在整个结构体系中,每个服务都是通过企业服务总线来进行互相访问。
假设当有一个服务请求者A想寻找一个Web服务,那么它要通过相关的调用协议通过入站端口进入到ESB中,这时就可以找到已经存人在UDDI中的对应的Web服务B,然后通过出站端口,将消息提供给服务请求者A。
ESB可以通过发现、路由、匹配和选择,支持服务之间的动态交互,解耦服务请求者和服务提供者。
e.操作系统层。
该层是由整个集成框架中的最小单元组成,这些基本服务是应用系统集成的基石。这些基本服务(数据或业务单元)通过单独封装成单个Web服务,用Web Services封装应用系统可屏蔽原有系统的实现细节,消除不同技术之间集成的困难。Web Services封装使外部应用程序以统一的松散耦合的方式使用系统服务,当业务的实现逻辑需要更改时,只要Web Services的WSDL接口不变,无论系统的业务逻辑、实现技术甚至是更换全新的应用系统,客户程序都不需要作任何改动。我们将各种API接口用WSDL进行再描述,然后通过HTTP与SOAP共同进行传输。
SOA可以满足各种信息集成的要求,动态地适应企业流程的更新与重组,体现了跨平台、灵活性和易扩展。只要将企业的应用系统看作是一组组服务,那么就可以通过重新组合编排这些服务来满足企业需要。但是SOA技术的数据标准和Web技术还处在不断完善阶段,Web服务语言还有许多不兼容,这都制约了Web服务集成应用的发展。
相关推荐
基于SOA的企业应用系统集成研究与实现.kdh 一篇论文基于SOA的企业应用系统集成研究与实现.kdh 基于SOA的企业应用系统集成研究与实现.kdh
### 基于SOA的应用集成框架研究 #### 一、引言 随着信息技术的快速发展,企业对于业务系统的集成和开放性提出了更高的要求。然而,许多企业在实际操作中面临着“信息孤岛”的挑战,即由遗留系统和异构数据源形成的...
总的来说,基于SOA架构的信息系统集成研究与应用,为企业提供了一种适应快速变化业务需求、提升系统性能和扩展性的有效途径。随着互联网技术的不断发展,SOA架构将继续发挥其在信息系统集成中的重要作用,推动企业的...
SOA的核心设计目标是基于服务的交互来实现系统动态、松耦合的集成,这种方式大大降低了系统集成的复杂性和成本。SOA将应用程序的不同功能单元定义为服务,这些服务通过定义良好的接口和契约相互关联。与传统EAI架构...
【基于SOA架构的信息系统集成研究与应用】 随着企业业务模式的不断创新,传统的信息系统架构已经无法满足当前的需求。面向服务的架构(SOA)作为一种现代的解决方案,它以服务为中心,强调松散耦合、可重用性和标准...
通过对胶凝砂砾石坝施工质量监控系统的需求分析和设计,我们选择了面向服务的、基于 SOA 的企业应用集成,实现了资源共享和系统间的互操作性,提高了系统的灵活性。 一、服务提供者 服务提供者主要完成服务的设计...
### 基于SOA的电子政务系统研究与应用 #### 概述 电子政务作为提升政府工作效率和服务质量的重要手段,对于实现政府信息化建设具有重大意义。然而,随着电子政务系统的不断发展,各业务系统间存在的“信息孤岛”...
### 基于SOA的企业知识集成体系构建 #### 一、引言 随着信息技术的发展,企业信息资源的集成方式正逐步向着更高层次发展,即从载体集成到数据集成、信息集成,最终走向战略集成与知识集成。知识集成作为企业信息...
根据给定文件信息,本文将深入探讨SOA(面向服务的架构)在系统集成中的应用及相关关键技术。 ### SOA在系统集成中的应用 #### 一、系统集成的概念 系统集成是指将不同来源、不同功能的企业内外系统进行有效的...
针对给定文件信息中关于“基于SOA和Web服务的高校信息系统集成研究”的内容,我们可以...该研究不仅对高校信息系统的发展有重要的意义,而且对于理解和实施基于SOA和Web服务的企业级信息系统集成也有着重要的参考价值。
1. **需求分析**:明确MES集成的目标和范围,识别需要集成的应用系统。 2. **服务建模**:根据需求将MES功能拆分为服务,定义服务间的关系。 3. **服务设计与开发**:设计服务接口,开发服务实现,确保与现有系统的...
### 基于SOA架构的企业研究:电力调度自动化系统 #### 一、引言 在当前电力系统日益复杂和动态变化的背景下,基于服务导向架构(SOA)的电力调度自动化系统研究与建设成为应对电力系统监测和控制挑战的关键。随着...
标题中的“行业分类-设备装置-一种基于SOA的应用系统平台架构的系统及设计方法”表明,这个压缩包文件包含了关于设备装置行业的信息技术应用,特别是使用面向服务架构(Service-Oriented Architecture,简称SOA)...
然而,关键在于确定哪些云服务最适合企业的内部系统、应用程序和专业技能,并确保这些云服务能够与企业的现有基础设施相集成。SOA架构在这方面具有优势,因为它提供了一种易于扩展且二次开发成本较低的基础架构,...