阅读以下关于企业应用集成的叙述,根据要求回答问题。
[说明]
某大型企业随着信息化的进展,积累了许多异构的遗产信息系统,这些系统分别采用J2EE、.NET等技术进行开发,分布在不同的地理位置,采用不同的协议进行数据传输。企业要求集成后的系统能够实现功能整合,并在组织现有功能的基础上提供增值服务。FT软件开发公司承接了某大型企业应用系统集成任务。为了按时保质完成任务,选择合适的企业应用集成方法和架构非常重要。项目组在讨论方案时,提出了两种集成思路。
(1)魏工建议采用传统的应用集成方法,将应用集成分为多个层次,并采用消息代理中间件连接遗产系统。
(2)陈工建议采用基于SOA的方法进行应用集成,将现有遗产系统采用Web Service的方式进行包装,暴露统一格式的接口,并采用企业服务总线(ESB)进行连接。
项目组仔细分析比较了两种方案的优点和不足后,认为魏工和陈工的建议都合理,但是结合当前项目的实际情况,最后决定采用陈工的建议。
[问题1]
请分析比较两种集成方案的优点和不足,将表中的(1)~(6)空缺处的内容填写完整。
[*]
参考答案:应用集成是指两个或多个应用系统根据业务逻辑的需要而进行的功能之间的相互调用和互操作。应用集成需要在数据集成的基础上完成。应用集成在底层的网络集成和数据集成的基础上实现异构应用系统之间语用层次上的互操作。它们共同构成了实现企业集成化运行最顶层会聚集成所需要的,技术层次上的基础支持。应用集成模式包括集成适配器、集成信使、集成面板和集成代理4种,每种应用集成模式都是对具有业务功能依赖关系的多个应用之间互操作实现方法的总结。在具体应用中,集成模式可能以某种变形(这是一种扩展集成模式的主要方式)的形式出现,这些变形可能不仅仅只是一种模式的实例化,也可能是一种具有广泛适用性的集成方式。
通常,应用集成主要采用点对点的紧耦合方式。这种集成方式虽然不需要对应用系统做较大的改动,但用这种方式集成的系统缺乏必要的柔性,不能适应业务系统快速重构的需求。随着应用软件系统设计和实现过程中标准化程度的不断提高,系统的开放性(可配置性、可扩展性)越来越好,组件化的系统实现及松散耦合的应用集成方式逐渐成为构建企业业务处理系统的主流。其中,松散耦合是实现系统柔性的基础。
在陈工建议的集成方案中,Web Service是一种可以接收从Internet或Intranet上传送的请求、轻量级的独立的通信技术,它允许网络上的所有系统相互间进行交互。Web Service的3个基本技术分别是UDDI、WSDL和SOAP,它们都是以XML为基础定义的。在Web服务体系中,使用WSDL来描述服务,UDDI来发布和查找服务,而SOAP用来执行服务调用。
面向服务架构体系结构(SOA)的几个关键特性是,它是一种粗粒度、松耦合的服务架构,服务之间通过简单、精确定义接口进行通信,不涉及底层编程接口和通信模型。SOA可以根据需求通过网络对松耦合、粗粒度的应用组件进行分布式部署、组合和使用。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。
SOA技术将应用程序的不同功能单元通过一些良好定义的接口联系起来,并且接口采用中立的方式进行定义,它独立于实现服务的硬件平台、操作系统和编程语言。这样可以使得构建的服务以一种统一和通用的方式进行交互。
企业服务总线(ESB)是对消息中间件的发展,采用了“总线”这样一种模式来管理和简化应用之间的集成拓扑结构,以广为接受的开放标准为基础来支持应用程序之间在消息、事件和服务的级别上动态地互连互通。ESB的基本核心功能包括:①提供位置透明性的消息路由和寻址服务;②提供服务注册和命名的管理功能;③支持多种消息传递范型;④传输协议转换;⑤支持多种数据格式及其相互转换;⑥提供日志和监控功能等。
ESB所提供的基于标准的连接服务,将应用中实现的功能或者数据资源转化为服务请求者能以标准的方式来访问的服务;当请求者来请求一个服务时,ESB中这种中介转化过程可能简单到什么也没有,也可能需要很复杂的中介服务支持,包括动态地查找和选择一个服务,以及消息的传递、路由和转换、协议的转换。这种中介过程,是ESB借助于服务注册管理及问题域相关的知识(如业务方面的一些规则等)自动进行的,不需要服务请求者和提供者介入,从而实现了解耦服务请求者和提供者的技术基础,使得服务请求者不需要关心服务提供者的位置和具体实现技术,双方在保持接口不变的情况下,各自可以独立地演变。
如果企业只是进行小规模或较浅层次的“战术”级应用集成,采用传统的集成方式即可较好的完成任务。但是如果企业想从集成系统的灵活性和可扩展角度考虑,能够持续地集成已有信息系统,并进行“战略”意义上的长远规划,那么面向服务的架构无疑是一种更加优越的方法。采用SOA架构思想进行应用集成,企业现有的应用系统都可以看做广义上的服务提供者,因此(1)空缺处应该填写“将现有系统看做抽象的服务提供者,集成方法统一明确”。
传统的应用集成方式往往采用分层的方式对待整个集成活动,因此在(2)空缺处应该填写“不同层次的集成方法关注点不同,功能组合方面能力较弱”。而采用SOA架构的应用集成方案中,(3)空缺处应该填写“强调功能的暴露与服务的组合,便于提供增值服务”。
对于(4)空缺处,传统的集成方式大多会采用中心辐射型的集成架构,系统的耦合程度较高。而对于(5)空缺处,SOA架构的ESB采用总线结构模式,简化了应用之间的集成拓扑,系统的耦合度较低。
采用SOA架构的应用集成方案通过源白实践的模式,提供了基于标准的通用连接服务,使得服务请求者和服务提供者之间可以以松散耦合、动态的方式交互,从而在不同层次上使得解决方案是一个松散耦合、灵活的架构。因此在(6)空缺处应该填写“集成系统具有模块化、松耦合的特点,可扩展性较强”。
整理以上分析内容,可得到两种集成方案各自的优点和不足,如下表所示。