论文部分内容阅读
摘要:本文介绍了企业应用集成,然后在剖析了SOA的关键技术的基础上,提出了基于SOA的企业应用集成解决方案,这种方案具备灵活性、松散耦合性、分步集成、易扩展等特点。
关键词:SOA;企业应用集成
中图分类号:TP311.133.1文献标识码:A
SOA&Enterprise Application Integration Design
Li Shu
(Sichuan Leshan Vocational&Technical College,Leshan614000,China)
Abstract:This paper describes enterprise application integration, and then analyzes the key technology of SOA and Web services,proposed SOA-based enterprise application integration solutions,this program flexible,loosely coupled nature,step by step integration,easily extensible.
Keywords:SOA;Enterprise application integration
一、企业应用集成
(一)企业应用集成的提出
企业应用集成(EAI)是指企业中和企业之间的任何相连的应用间无限制地共享数据和业务处理,从而使企业的整个业务、管理、资源等各个环节,达到协调运转,效率优化。从企业应用集成的具体应用范围来看,企业应用集成包括两方面:企业内部应用系统集成和企业之间的应用系统集成。EAI的模型如图1所示:
(二)企业应用集成的内容
企业应用集成的内容涉及到以下几个层面:
1.业务过程集成:当对业务过程进行集成的时候,企业必须在各种业务系统中定义、授权和管理各种业务信息的交换,以便改进操作、减少成本、提高响应速度。
2.应用集成:为两个应用中的数据和函数提供接近实时的集成。
3.数据集成:在集成之前,必须首先对数据进行标识并编成目录,另外还要确定元数据模型。这三步完成以后,数据才能在数据库系统中分布和共享。
4.集成的标准:集成的标准化促成了信息和业务数据的共享和分布,包括COM+/DCOM、CORBA、EDI、JavaRMI和XML。
5.平台集成:要实现系统的集成,底层的结构、软件、硬件以及异构网络的特殊需求都必须得到集成。
二、面向服务的体系结构
(一)SOA协作
面向服务的体系结构(service-oriented architecture SOA)是一个组件模型。面向服务的体系结构将应用程序中的不同功能单元称为服务,并通过对这些服务之间定义良好的接口而将其联系起来。接口是采用中立的方式进行定义的,也就是说它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。结构模型如图2所示。
三个角色是:
1.服务提供者:提供并发布自己的服务,并且对使用自身服务的请求进行响应;
2.服务注册中心:用来存储服务描述信息的信息库;
3.服务请求者:指查找和调用服务的客户端应用程序,利用服务代理(UDDI)查找所需的服务,然后使用该服务(绑定)。
(二)SOA的特点和优势
1.松散耦合
服务实现者可以更改服务中的接口、数据或者消息版本,而不对服务使用者造成影响。
2.基于行业标准
消除了使用特定标准而限制于服务使用者的需要。并且使用基于标准的技术可打破行业或技术平台的垄断并促进所有服务的最优组合。
3.可重用的服务
服务重用避免了重复开发之烦琐,同时提高了实现中的一致性。服务的重用比起组件或者类的重用更容易实现。
4.同步服务调用(RPC方式)
同步服务对于要求实时响应的应用程序来说是至关重要的,例如Portal 或者Query。
5.异步服务调用
在异步服务调用中,调用方向消息收发服务发送一个包含完全上下文的消息,收发服务将该消息传递给接收者。
三、基于SOA的企业应用集成(EAI)
(一)服务访问流程
通过基于SOA的企业应用集成框架实现的服务访问流程描述如下:
1.企业门户将用户对某个服务的请求传到后端支持服务总线的应用服务器,如IBM的WebSphere;
2.应用服务器通过UDDI查询Web Service公共目录或者经验证后访问Web Service私有目录,用得到的WSDL描述生成SOAP请求消息绑定服务提供者;
3.SOAP请求被传递到对应的SOAP路由器,由SOAP路由器将该请求传递到对应该服务的适配器;
4.适配器激活相关应用系统;
5.应用处理结果返回适配器,经适配器打包为包含处理结果的SOAP消息,返回给SOAP路由器,直至返回用户处。
(二)主要组成部分功能描述
1.企业内部Service Provider
企业内部Service Provider中包含已有应用或新开发的Web Service应用,它们均被封装为标准的Web Service组件,成为系统中的一个集成点。
对已有系统集成的关键在于对系统的封装和包裹,可以先利用WSDL生成器生成该服务对应的WSDL文件,然后生成服务器端基于SOAP的框架代码,在框架代码的基础上开发Web服务适配器,通过该服务适配器,将XML格式的请求转换为已有系统能解析的格式,同时,将已有系统处理后的结果转换为XML格式。服务适配器还具备与后端服务器建立通信连接,验证数据有效性等功能。
2.服务总线Service Bus
服务总线通过一个处于中间层的集中式服务器,为业务流程控制、服务路由、协议转换和安全扮演着中央控制点的角色。以下对服务总线上的几个关键功能作简要介绍:
(1)工作流控制:定义工作流程,并协调服务间的交互,己出现一些推荐的标准,如WSFL(Web Service Flow Language)等;
(2)事务管理:由于分布的,松耦合的应用环境不适于使用传统的事务技术,对此,IBM,微软和BEA联合提出WS-Transaction;
(3)安全映射:对所有参与服务进行统一管理,把安全性考虑隔离在单一构件上,简化开发和管理;
(4)服务监控:监控流程的执行,利用记录的数据来分析服务质量和指导服务改进;
(5)SOAP路由器:用以实现SOAP消息的传递,路由器通过分析,找出对应的Web Service适配器的位置,将SOAP请求传递到所请求的适配器;
(三)服务网关Service Gateway
对于企业外部集成,使用服务网关,一方面可以安全地对外公开Web服务,另一方面,防火墙之外的客户也能调用这些服务。它包括一个服务管理模型和过滤器。服务网关能够将客户端支持的服务协议转换为提供方支持的服务协议,如:客户的请求可能是HTTP上的SOAP,但在内部可以使用JMS协议上的SOAP。
(四)企业门户Enterprise Portal
终端用户界面集成特定用户访问的全部应用程序和服务来提供可用、高效、一致的界面。组合式Portal将Web服务通过Portal即插即用,使EAI更加灵活。
四、结束语
SOA为企业应用集成(EAI)提供了理想的集成框架,它是实现EAI的有力工具。基于SOA和消息中间件技术,可以在不改变应用系统原有底层架构的基础上实现灵活的、面向服务的应用集成,未来相信面向服务的EAI会在企业信息化的进程中得到更广泛的应用。
参考文献
[1]宋善德,王雪飞.基于Web服务的企业应用集成方案.计算机应用研究,2003,6,127-129.
[2]宋波,李妙妍.面向Web服务的BPEL的研究与实现.计算机工程与设计,2007,28(9).212-214.
[3]叶宇风.基于SOA的企业应用集成研究.微电子学与计算机,2006,23,(5).211-213.
[4]胡继东,刘广钟.基于Web Services的软件集成方法的研究与实现.计算机系统应用,2002,11,33-35
作者简介:
李澍(1970.11-),男,四川自贡,讲师,计算机应用,四川乐山职业技术学院,
关键词:SOA;企业应用集成
中图分类号:TP311.133.1文献标识码:A
SOA&Enterprise Application Integration Design
Li Shu
(Sichuan Leshan Vocational&Technical College,Leshan614000,China)
Abstract:This paper describes enterprise application integration, and then analyzes the key technology of SOA and Web services,proposed SOA-based enterprise application integration solutions,this program flexible,loosely coupled nature,step by step integration,easily extensible.
Keywords:SOA;Enterprise application integration
一、企业应用集成
(一)企业应用集成的提出
企业应用集成(EAI)是指企业中和企业之间的任何相连的应用间无限制地共享数据和业务处理,从而使企业的整个业务、管理、资源等各个环节,达到协调运转,效率优化。从企业应用集成的具体应用范围来看,企业应用集成包括两方面:企业内部应用系统集成和企业之间的应用系统集成。EAI的模型如图1所示:
(二)企业应用集成的内容
企业应用集成的内容涉及到以下几个层面:
1.业务过程集成:当对业务过程进行集成的时候,企业必须在各种业务系统中定义、授权和管理各种业务信息的交换,以便改进操作、减少成本、提高响应速度。
2.应用集成:为两个应用中的数据和函数提供接近实时的集成。
3.数据集成:在集成之前,必须首先对数据进行标识并编成目录,另外还要确定元数据模型。这三步完成以后,数据才能在数据库系统中分布和共享。
4.集成的标准:集成的标准化促成了信息和业务数据的共享和分布,包括COM+/DCOM、CORBA、EDI、JavaRMI和XML。
5.平台集成:要实现系统的集成,底层的结构、软件、硬件以及异构网络的特殊需求都必须得到集成。
二、面向服务的体系结构
(一)SOA协作
面向服务的体系结构(service-oriented architecture SOA)是一个组件模型。面向服务的体系结构将应用程序中的不同功能单元称为服务,并通过对这些服务之间定义良好的接口而将其联系起来。接口是采用中立的方式进行定义的,也就是说它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。结构模型如图2所示。
三个角色是:
1.服务提供者:提供并发布自己的服务,并且对使用自身服务的请求进行响应;
2.服务注册中心:用来存储服务描述信息的信息库;
3.服务请求者:指查找和调用服务的客户端应用程序,利用服务代理(UDDI)查找所需的服务,然后使用该服务(绑定)。
(二)SOA的特点和优势
1.松散耦合
服务实现者可以更改服务中的接口、数据或者消息版本,而不对服务使用者造成影响。
2.基于行业标准
消除了使用特定标准而限制于服务使用者的需要。并且使用基于标准的技术可打破行业或技术平台的垄断并促进所有服务的最优组合。
3.可重用的服务
服务重用避免了重复开发之烦琐,同时提高了实现中的一致性。服务的重用比起组件或者类的重用更容易实现。
4.同步服务调用(RPC方式)
同步服务对于要求实时响应的应用程序来说是至关重要的,例如Portal 或者Query。
5.异步服务调用
在异步服务调用中,调用方向消息收发服务发送一个包含完全上下文的消息,收发服务将该消息传递给接收者。
三、基于SOA的企业应用集成(EAI)
(一)服务访问流程
通过基于SOA的企业应用集成框架实现的服务访问流程描述如下:
1.企业门户将用户对某个服务的请求传到后端支持服务总线的应用服务器,如IBM的WebSphere;
2.应用服务器通过UDDI查询Web Service公共目录或者经验证后访问Web Service私有目录,用得到的WSDL描述生成SOAP请求消息绑定服务提供者;
3.SOAP请求被传递到对应的SOAP路由器,由SOAP路由器将该请求传递到对应该服务的适配器;
4.适配器激活相关应用系统;
5.应用处理结果返回适配器,经适配器打包为包含处理结果的SOAP消息,返回给SOAP路由器,直至返回用户处。
(二)主要组成部分功能描述
1.企业内部Service Provider
企业内部Service Provider中包含已有应用或新开发的Web Service应用,它们均被封装为标准的Web Service组件,成为系统中的一个集成点。
对已有系统集成的关键在于对系统的封装和包裹,可以先利用WSDL生成器生成该服务对应的WSDL文件,然后生成服务器端基于SOAP的框架代码,在框架代码的基础上开发Web服务适配器,通过该服务适配器,将XML格式的请求转换为已有系统能解析的格式,同时,将已有系统处理后的结果转换为XML格式。服务适配器还具备与后端服务器建立通信连接,验证数据有效性等功能。
2.服务总线Service Bus
服务总线通过一个处于中间层的集中式服务器,为业务流程控制、服务路由、协议转换和安全扮演着中央控制点的角色。以下对服务总线上的几个关键功能作简要介绍:
(1)工作流控制:定义工作流程,并协调服务间的交互,己出现一些推荐的标准,如WSFL(Web Service Flow Language)等;
(2)事务管理:由于分布的,松耦合的应用环境不适于使用传统的事务技术,对此,IBM,微软和BEA联合提出WS-Transaction;
(3)安全映射:对所有参与服务进行统一管理,把安全性考虑隔离在单一构件上,简化开发和管理;
(4)服务监控:监控流程的执行,利用记录的数据来分析服务质量和指导服务改进;
(5)SOAP路由器:用以实现SOAP消息的传递,路由器通过分析,找出对应的Web Service适配器的位置,将SOAP请求传递到所请求的适配器;
(三)服务网关Service Gateway
对于企业外部集成,使用服务网关,一方面可以安全地对外公开Web服务,另一方面,防火墙之外的客户也能调用这些服务。它包括一个服务管理模型和过滤器。服务网关能够将客户端支持的服务协议转换为提供方支持的服务协议,如:客户的请求可能是HTTP上的SOAP,但在内部可以使用JMS协议上的SOAP。
(四)企业门户Enterprise Portal
终端用户界面集成特定用户访问的全部应用程序和服务来提供可用、高效、一致的界面。组合式Portal将Web服务通过Portal即插即用,使EAI更加灵活。
四、结束语
SOA为企业应用集成(EAI)提供了理想的集成框架,它是实现EAI的有力工具。基于SOA和消息中间件技术,可以在不改变应用系统原有底层架构的基础上实现灵活的、面向服务的应用集成,未来相信面向服务的EAI会在企业信息化的进程中得到更广泛的应用。
参考文献
[1]宋善德,王雪飞.基于Web服务的企业应用集成方案.计算机应用研究,2003,6,127-129.
[2]宋波,李妙妍.面向Web服务的BPEL的研究与实现.计算机工程与设计,2007,28(9).212-214.
[3]叶宇风.基于SOA的企业应用集成研究.微电子学与计算机,2006,23,(5).211-213.
[4]胡继东,刘广钟.基于Web Services的软件集成方法的研究与实现.计算机系统应用,2002,11,33-35
作者简介:
李澍(1970.11-),男,四川自贡,讲师,计算机应用,四川乐山职业技术学院,