首页  ·  知识 ·  
SOA在企业应用集成中的实现
赵海斌 宋文斐  万方数据    编辑:dezai   图片来源:网络
SOA是一种应用框架,它着眼于日常的业务应用,并将它们划分为单独的业务功能和流程,即所谓的服务。SOA使用户可以构建、部署和整合这些服务,且无需依赖应用程序
 一 前言

  我国电力企业信息化起源于20世纪60年代,电力行业相比其他行业的信息化进程较为领先。目前,电力系统的信息化建设取得了长足的进步,信息基础设施初具规模,信息技术应用深入电网建设、经营和管理的各个环节。但随着计算机技术的发展和应用的不断深入,目前运行的这些应用系统渐渐不能满足整个电力系统的发展,这些应用系统之间都有各自的运行机制和策略,数据交换和应用共享联系的并不紧密,很容易形成“信息孤岛”。这些问题导致企业数据冗余、重复输入、部门之间难于进行信息共享。各个系统之间信息传输的困难,无法实现实时的信息存取和对业务流程的透视,无法实现企业价值链的全面、彻底的透视和控制,企业成本提高和效益下降,并且使企业IT系统的维护所需的费用和时间增长,人力资源紧张。企业的数据既不能支持高层领导决策,也不能很好地服务于客户。由于不能在更高层次上充分发挥不同系统中数据的整体作用,领导也难于统揽全局。

二 应用集成的发展

  应用集成就是结合业务流程的梳理,通过技术手段集成业务应用,整合业务流、信息流和数据流,优化企业资源配置,促进企业级流程集成。

  应用集成架构取决与应用集成的技术,应用集成技术是伴随着企业信息系统的发展而产生和演变的,从早期的点对点方式,经历了EAI方式,发展到目前以面向服务架构(SOA)的集成方式。

  2.1 点对点方式集成

  早期企业的业务应用个数较少,一般多采用的是点对点方式的集成结构,在这种点对点的结构中,业务应用之间都很清楚对方的结构,相互之间通过接口相连,接口较少,集成工作量较小。随着需要集成的业务应用数量增加,业务应用之间的接口需求相应增加,接口开发的工作量也在增加,维护工作难度大、接口灵活性差等问题立即显现,集成关系及接口问题变的非常复杂。

  2.2 EAI方式集成

  为解决点对点集成方式所带来的问题,应用集成引入了企业应用集成平台(EAI,Enterprise Application Integration),EAI平台针对不同的接口技术分别提供了相应的适配器,采用不同技术的业务应用通过这些适配器接入EAI平台,由EAI平台负责业务应用之间的集成,采用EAI方式的集成大大减少了接口连接数量,有效增加了灵活性,同时在接口变化时,只需在EAI平台侧进行调整即可,增加了业务应用的可扩展性,降低了业务应用维护和升级的复杂性。但是由于存在着大量不同的技术标准、规范,EAI平台上需要进行大量的数据转换及配置工作,集成的灵活性、开放性存在局限性。

  2.3 SOA方式集成

  面向服务架构(SOA)是新兴的企业应用集成技术方案,它将企业应用中离散的业务功能提取出来,并将其组织成可互动的、基于标准的服务,有效的解决了EAI方式集成所面临的问题。SOA以提供服务的方式向企业提供了灵活、快捷的系统整台方案,它将模块化和便携化的服务在复合应用中组合和重用,以更为快速地满足业务需求。服务是SOA体系中最重要的组成部分,服务是指使用开放、中立的标准来定义接口规范(包括格式和传输协议)的功能。因为接口规范与实现功能所使用的具体硬件平台、操作系统和编程语言无关,所以服务调用方及服务提供方之间可以使用统一和标准的方式进行通信。服务作为联系不同业务应用,不同技术标准和实现手段的纽带。

三 SOA架构的发展

  SOA可以为企业解决“信息孤岛”问题,并能够提供随需应变的服务。SOA通过将原有的应用和资源转变为可共享的标准舭务,企业只需根据自己的策略来制定流程,把应用作为服务“拿来就用”,而无需考虑底层的集成;从而实现信息技术和企业业务之间的同步。SOA专注于考虑如何复用已有的服务。它鼓励使刚可替代的技术和消息机制,通过把服务联系到一起来满足应用;这种基于消息的应用允许企业通过调整现有的服务模式而不是被迫进行大规模新应用代码的开发来满足业务需求。

四 SOA的特点

  SOA并不足一种具体的技术,而是一种架构和组织IT基础结构及业务功能的方法。SOA将应用程序的不同功能单元(称为服务)通过服务之间定义良好的接口和契约联系起来。接口采用中立的方式进行定义,它独立于实现服务的硬件平台、操作系统和编程语吉,这使得构建在各种系统中的服务可以采用一种统一和通用的方式进行交互。

  SOA最大的优点是可以通过对已有服务的重用达到降低开发成本、缩短开发周期、优化业务流程的目的。服务目录主要用于收集和整理已有服务的信息,从而达到发现已有服务的目的,服务总线是用松散耦合的集成方式连接不同服务调用者和服务,服务接口定义了服务间相互调用的接口协议,是服务能否正常运作的关键。

  为更有效地管理服务并降低服务之问的依赖关系,SOA体系中引入了ESB(Enterprise Service Bus,简称ESB)的概念。企业服务总线将业务应用的功能通过开放的标准进行统一接入,并以服务的形式发布。此外,通过提供服务查询搜索功能,交互的一方无须与另一方进行绑定,而是在服务请求中提供如服务的业务种类、服务提供部门等信息,由总线动态路由决定。总线为参与集成的各方屏蔽了硬件平台、软件、网络和物理位置上的差异,是实现松耦合集成构架的核心组成部分。

  通常。企业服务总线使用SOAP作为消息格式,可根据需求支持各种开放的标准传输协议(如HTTP(S)、JMS等)。它帮助服务提供方和服务调用方隔离具体的技术实现,帮助服务调用方进行消息的路由和转换,进行权限验证后,按服务提供方规定的格式发送指定地址,最后再将返回结果以服务调用方可接受的格式发还给服务调用方。另外,企业服务总线还支持消息的单向发送,发布/订阅模式。

 

五 SOA的应用现状

  伴随若SOA应用的稳健发展,一些公司在实现各种Web服务和将已有应用转换到SOA架构上取得了重大进展。国外已经有一些案例将SOA的设计思想应用到医疗、电信、金融、电力等各个行业,并取得成功。2007年是中国SOA(面向服务架构)的启动年。BEA、IBM、微软、用友、金蝶、SAP、Oracle、IONA等国内外主流厂商不约而同高举SOA大旗,普及SOA思想,阐述各自的SOA战略,大力向用户推广自己的产品和方案。来自各方面的专家,学者和企业高管也纷纷著书立说,以极太热情推动了SOA在中国的深入应用。十年时间,SOA的概念从生涩抽象变得日渐成熟清晰,供应商口中的SOA也真真切切地落实到白纸黑字的规范和标准上。

六 SOA在电力企业中的实现

  国家电网公司在“十一五”信息发展规划总体目标中提出:按照企业级信息系统建设思路,构建纵向贯通、横向集成的企业信息集成平台,实现公司上下信息渠道畅通和数据共享与应用;提高工作效率,增强公司各项业务的管理能力。

  依据周家电网公司“十一五”信息发展规划,河南省电力公司实施了国家电网公司信息化SGl86工程,即“构筑一体化企业级信息集成平台,建设八大业务应用,建立健全六个保障体系”。其中,一体化企业级信息集成平台就是结合业务流程的梳理。通过技术手段,集成业务应用,整合业务流、信息流和数据流,优化企业资源配置,促进企业级流程集成。

  根据河南省电力公司现状,应用集成采用通用集成平台,这种应用模式是将套装软件实现的业务看作与其他业务应用相同,也提供调用集成平台的服务,通过通用的、标准的、基于SOA架构的集成平台实现集成。

  这种模式下,既包括套装软件实现的业务应用,也包括自主开发的业务应用,采用的技术和标准多样化,应用集成的难度较大。为了能够将基于各种不同技术和标准的业务应用接入集成平台,实现彼此之间的信息共享、流程交互,要求集成平台具备更好的开放性、通用性、可靠性。

点击图片查看大图

  通过统一选型确定的企业服务总线和服务目录等产品,经过严格的招标流程选出,属于业界最优的企业级应州集成产品之一,具有高可靠性,支持标准广泛,由它们构成的应用集成平台更适合这一阶段的集成需求。此架构模式下的各个组成部分可以选用业内最优的软件产品,灵活性、通用性较高。应用模式如图所示。

 

图中的财务、物资、项目由套装软件实现,营销、安全生产、协同办公、综合管理、人力管理等业务应用为自主开发的应用系统。所有的业务应用都可按照“四接口规范”将业务功能封装成Web Services,注册到应用集成平台。

  服务消费者是个抽象的概念,所有参与集成的业务应用都可以是服务消费者,服务消费者通过标准方式(SOAP over HTTP或者SOAP over JMS)调用服务总线上的服务,服务与总线之间采用XML传输数据,当请求数据进入服务总线后,服务总线调用相应的业务服务。

  BMP能够编排现有的服务,形成组合服务或业务流程。业务流程的每个节点以“服务消费者”的身份,通过标准方式(SOAP over HTTP或者SOAP over JMS)调用服务总线上的服务。编排形成的组合服务或业务流程也以标准Web服务的方式注册到服务总线,通过标准方式(SOAP over HTTP或者SOAP over JMS)被用户或者其他应用调用。

  在上述架构模式中,集成平台的各个组成部份均由统一选型的产品构成,这些产品之间的兼容性在选型过程中已经得到验证。另外,统一造型的产品多为独立专业厂商提供,在特定领域应用较广,案例较多,具备相关技能的工程师市场容量较大。

七 意义

  建立基于SOA的企业信息集成平台,可以达到信息技术支撑能力与业务应用需求实现的同步,帮助企业根据业务需求,合理有效地动态配置各种资源目的。SOA是一种架构模型,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。SOA可以为企业解决“信息弧岛”问题,并能够提供随需应变的服务。SOA通过将原有的应用和资源转变为可共享的标准服务,企业只需根据自己的策略来定制流程,把应用作为服务“拿来就用”,而无需考虑底层的集成;从而实现信息技术和企业业务之间的同步。

本文作者:赵海斌 宋文斐 来源:万方数据
CIO之家 www.ciozj.com 微信公众号:imciow
    >>频道首页  >>网站首页   纠错  >>投诉
版权声明:CIO之家尊重行业规范,每篇文章都注明有明确的作者和来源;CIO之家的原创文章,请转载时务必注明文章作者和来源;
延伸阅读