(计算机应用技术专业论文)基于soa的电力企业应用集成的研究与应用.pdf_第1页
(计算机应用技术专业论文)基于soa的电力企业应用集成的研究与应用.pdf_第2页
(计算机应用技术专业论文)基于soa的电力企业应用集成的研究与应用.pdf_第3页
(计算机应用技术专业论文)基于soa的电力企业应用集成的研究与应用.pdf_第4页
(计算机应用技术专业论文)基于soa的电力企业应用集成的研究与应用.pdf_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华北电力大学硕士学位论文 摘要 电力企业在信息化过程中基本上以业务部门为依据进行条块分割,缺乏 整体规划,导致企业内应用系统之间不能有效地共享信息,更不能实现业务 流程的协作和自动化。企业应用集成可以解决电力公司“信息孤岛 现象, 实现系统间的无缝集成,使它们能够统一运作。 在分析传统企业应用集成方案的基础上,本文提出了基于s o a ( s e r v i c e o r i e n t e da r c h i t e c t u r e ,面向服务的体系结构) 的电力企业应用集成框架。然 后详细描述了该框架的工作机制。重点设计并实现了该架构各个不同层次的 集成模型和服务,最后结合一个实例验证了这一架构的可行性。 关键词:面向服务的体系结构,企业应用集成,w e b 服务 a b s t r a c t e l e c t r i cp o w e re n t e r p r i s eb a s i c a l l yt a k e sb u s i n e s ss e c t i o na c c o r d i n gt oc a r r y o n ap i e c et o p a r t i t i o ni n t h ei n f o r m a t i o n - b a s e dp r o c e s s ,l a c kt h ew h o l e p r o g r a m m i n g c a u s i n gs y s t e m s o ft h e e n t e r p r i s e c a n ts h a r ei n f o r m a t i o n a v a i l a b l yi nt h ei n t e r n a l f a l lt h r o u g ht h ec o o p e r a t i o na n dt h ea u t o m a t i o no f b u s i n e s sp r o c e s sm o r e t h eb u s i n e s se n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o nc a ns o l v e t h ep h e n o m e n o no ft h e ”i n f o r m a t i o ni s o l a t e di s l a n d ”o ft h ep o w e rc o m p a n y c a r r y i n go u tt h ef u l li n t e g r a t i o no fs y s t e m ,m a k i n gt h e mu n i f yo p e r a t i n g i na n a l y z i n gt h et r a d i t i o n a lp r o j e c to fe n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n ,t h i s p a p e rp r o p o s e se n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o na r c h i t e c t u r eb a s e do ns o a t h e nd e s c r i b et h ew o r km e c h a n i s mo ft h a tf r a m ei nd e t a i l m a i n l yd e s i g na n d i m p l e m e n tt h ev a r i o u sl e v e l so fi n t e g r a t e dm o d e la n ds e r v i c e s f i n a l l y , ap r o je c t t ov e r i f yt h ef e a s i b i l i t yo ft h ea p p l i c a t i o ni n t e g r a t i o nf r a m e w o r k j i a n gl ih o n g ( c o m p u t e ra p p l i c a t i o nt e c h n o l o g y ) d i r e c t e db yp r o f l iw e i k e yw o r d s :s o a , e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n ,w e bs e r v i c e 华北电力大学硕士学位论文 摘要 电力企业在信息化过程中基本上以业务部门为依据进行条块分割,缺乏 整体规划,导致企业内应用系统之间不能有效地共享信息,更不能实现业务 流程的协作和自动化。企业应用集成可以解决电力公司“信息孤岛 现象, 实现系统间的无缝集成,使它们能够统一运作。 在分析传统企业应用集成方案的基础上,本文提出了基于s o a ( s e r v i c e o r i e n t e da r c h i t e c t u r e ,面向服务的体系结构) 的电力企业应用集成框架。然 后详细描述了该框架的工作机制。重点设计并实现了该架构各个不同层次的 集成模型和服务,最后结合一个实例验证了这一架构的可行性。 关键词:面向服务的体系结构,企业应用集成,w e b 服务 a b s t r a c t e l e c t r i cp o w e re n t e r p r i s eb a s i c a l l yt a k e sb u s i n e s ss e c t i o na c c o r d i n gt oc a r r y o n ap i e c et o p a r t i t i o ni n t h ei n f o r m a t i o n - b a s e d p r o c e s s ,l a c kt h ew h o l e p r o g r a m m i n g c a u s i n gs y s t e m s o ft h e e n t e r p r i s e c a n ts h a r ei n f o r m a t i o n a v a i l a b l yi nt h ei n t e r n a l f a l lt h r o u g ht h ec o o p e r a t i o na n dt h ea u t o m a t i o no f b u s i n e s sp r o c e s sm o r e t h eb u s i n e s se n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o nc a ns o l v e t h ep h e n o m e n o no ft h e ”i n f o r m a t i o ni s o l a t e di s l a n d ”o ft h ep o w e rc o m p a n y c a r r y i n go u tt h ef u l li n t e g r a t i o no fs y s t e m ,m a k i n gt h e mu n i f yo p e r a t i n g i na n a l y z i n gt h et r a d i t i o n a lp r o j e c to fe n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n ,t h i s p a p e rp r o p o s e se n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o na r c h i t e c t u r eb a s e do ns o a t h e nd e s c r i b et h ew o r km e c h a n i s mo ft h a tf r a m ei nd e t a i l m a i n l yd e s i g na n d i m p l e m e n tt h ev a r i o u sl e v e l so fi n t e g r a t e dm o d e la n ds e r v i c e s f i n a l l y , ap r o je c t t ov e r i f yt h ef e a s i b i l i t yo ft h ea p p l i c a t i o ni n t e g r a t i o nf r a m e w o r k j i a n gl ih o n g ( c o m p u t e ra p p l i c a t i o nt e c h n o l o g y ) d i r e c t e db yp r o f l iw e i k e y w o r d s :s o a , e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n ,w e bs e r v i c e 声明尸明 本人郑重声明:此处所提交的硕士学位论文基于s o a 的电力企业应用集成研究 与应用,是本人在华北电力大学攻读硕士学位期间,在导师指导下进行的研究工作和 取得的研究成果。据本人所知,除了文中特别加以标注和致谢之处外,论文中不包含其 他人已经发表或撰写过的研究成果,也不包含为获得华北电力大学或其他教育机构的学 位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中 作了明确的说明并表示了谢意。 学位论文作者签名:兰壶讧日期:印2 充学位论文作者签名:圭兰兰日期:塑墨:墨竺 关于学位论文使用授权的说明 本人完全了解华北电力大学有关保留、使用学位论文的规定,即:学校有权保管、 并向有关部门送交学位论文的原件与复印件;学校可以采用影印、缩印或其它复制手 段复制并保存学位论文;学校可允许学位论文被查阅或借阅;学校可以学术交流为 目的,复制赠送和交换学位论文:同意学校可以用不同方式在不同媒体上发表、传播 学位论文的全部或部分内容。 ( 涉密的学位论文在解密后遵守此规定) 作者签名:薹至焦 导师签名: 日期:塑呈:丕竺日期: 当 华北电力大学硕士学位论文 1 1 选题背景及意义 第一章绪论 电力信息系统经过十几年的建设, 企业的发展也得益于信息系统的发展, 诸多问题,例如: 大多数的业务工作已经实现了电算化管理, 但是目前电力企业的信息化建设仍然存在着 ( 1 ) 信息系统的建设基本上以业务部门为依据进行条块分割,对业务流程变 化的适应性不强。 ( 2 ) 各部门信息系统缺乏统一的企业基础架构,造成硬件平台、软件平台和 软件基础架构的千差万别,例如权限管理、用户认证、组织机构等功能在各个系统 中都有应用,这些功能的标准千差万别。 ( 3 ) 大量数据分散在各个系统当中,缺乏面向业务主题、企业战略指标的有 效分析和挖掘,并没有转化成真正关于管理决策使用的价值信息。 ( 4 ) 信息获取的速度以及准确性不能满足企业管理决策的需要;信息从生产 到最终被使用的完整的渠道缺乏管理控制。 企业应用集成( e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n ,e a i ) 可以解决以上问题,消 除“信息孤岛 现象,实现电力信息系统之间的无缝集成,使它们能够统一运作【l 】。 传统的企业应用集成往往使用组件化技术进行分布式、跨平台的程序交互,系统整 体的拓扑结构是复杂的,组件的连接协议是私有的、非标准的【2 】。面向服务的体系 结构( s e r v i c e o r i e n t e da r c h i t e c t u r e ,s o a ) 带来了一种新的集成思想,根据它可以 构造出灵活的以服务为中心的架构。 s o a 是一种面向功能层的企业系统集成方式,它为传统的企业应用集成带来了 一场革命。该方式不仅能保证原有系统的数据安全性和逻辑安全性,而且还能实现 各系统之间的松耦合,方便系统流程的重组和优化:一方面用服务化的思想将各个 “信息孤岛中的业务功能封装成模块,并以服务的形式呈现于用户面前,用户不 必关心这些服务分别属于哪个系统。另一方面,应用开发人员或者系统集成者可以 通过组合一个或多个服务来构建应用,而无须理解服务的底层实现,一个服务可以 用j 2 e e ( j a v a2p l a t f o i me n t e r p r i s ee d i t i o n ,j a v a 2 平台企业版) 技术实现也可以 用n e t 技术实现,而使用服务的应用程序可以在不同平台上,实现的语言也可以 不同。 面向服务架构具有松耦合、明确定义的接口、位置透明、无状态的服务等特点, 这些优势能够对企业应用集成中忽视业务流程集成、集成平台缺乏灵活性和适应 华北电力大学硕士学位论文 性、扩展性差、互操作性不高等问题提出很好的解决方案。正因为它的重要性和在 未来体系架构中的核心地位,以及技术的前瞻性,因此本课题对基于s o a 的电力企 业应用集成的研究具有重要的理论和实际意义。 1 2 国内外研究现状 1 2 1 国外研究现状 s o a 在企业应用集成中的作用如此重要,引起了全世界的广泛关注,从“面向 服务 思想提出以来,已经经历了十多年时间。在理论和技术上可以按照“s 和 “a 划分为两个发展阶段:第一阶段中人们的研究工作主要集中在s o a 的运行时 相关结构标准上,例如s o a p ( s i m p l e0 b j e c t a c c e s sp r o t o c o l ,简单对象访问协议) 、 w s d l ( w e bs e r v i c e sd e s c r i p t i o nl a n g u a g e ,w 曲服务描述语言) 等【3 】,相当于0 0 ( o b j e c to r i e n t e d ,面向对象) 中对象内部结构方面。而随着x m l ( e x t e n s i b l em a r k u p l a n g u a g e ,可扩展标记语言) ,w e bs e r v i c e 等技术以及s o a 本身实践的不断发展, 对第二个层面“a ”的研究和应用需求变得越来越迫切。 目前,s o a 集中在对服务组合、服务协同和服务管理方面的研究。在服务协同 方面,出现了相应的标准,如b p e l ( b u s i n e s sp r o c e s se x e c u t i o nl a n g u a g e ,业务流 程执行语言) 【4 l ;服务管理包括通过包装现有系统为w e b 服务的方法来协调管理集 成系统和管理w e b 服务两方面。在对s o a 集成方法的研究中,目前,服务协同主 要是依据业务流程的方法而建立,具有单调性,还需要扩张多种协同方法,并且服 务组合和服务协同的方法常常交叉覆盖。在管理方法方面,还没有相应的标准出现。 在s o a 方面,还有广泛的研究空间和待解决的问题,如在服务建立协同之后,如何 保障服务的可靠性,换句话说,采用哪些机制能够保障服务的可靠性:随外界环境 的变化,组合服务又如何进化。 而对于基于s o a 的e a i 的原型系统,现在许多研究机构也结合自己的研究项 目,推出了一系列的原型系统,如:f e i c a o 等提出了基于一种元模型的w e b 服务集 成方案【5 】;i b m 的y i n gh u a n g 提出了一个解决业务集成的、e b 服务合成框架。i b m 公司推出的w e bs p h e r e 产品的红皮书介绍了一种基于w 曲服务的e a i 集成方案: 它采用了j 2 e e 结构和w e b 服务协议栈的分层概念,把每层对应的应用服务器、消 息代理、业务过程、监视环境等都作为w e b 服务路由器处理【6 1 。 1 2 2 国内研究现状 2 0 0 6 年4 月s o a 登陆中国,基于s o a 的解决方案,在全球各行业中应用已经 屡见不鲜,目前,在中国也已出现s o a 的成功应用,这些成功案例的主要解决方案 2 华北电力大学硕士学位论文 提供商是i b m 和b e a 。笔者通过查询相关资料,发现了一些典型的企业级整合案 例,在此列举出成功和失败案例各一并做出自己的分析: 成功案例:天极技术网2 0 0 6 年月1 1 报导的一家航空公司的企业级整合方案 ( h t t p :s e a r c h e r p t e c h t a r g e t c o r n c n b g z d 18 9 3 2 6 2 6 8 94 h t m l ) ,集成了航班管理、订 票系统和乘务人员管理系统,使用j m s ( j a v am e s s a g es e r v i c e ,l a v a 消息服务) 作 为消息中间件并加入了流程服务。此案例采用的架构符合利用总线传递消息的设计 思想,并且具有一定的部属时服务组合功能。特别是采用j m s 传递消息并利用门户 系统集成客户访问非常令人称道! 失败案例:i t l 6 8 网站2 0 0 6 年1 2 月报导的中国新悦集团在使用s o a 整合企业 应用时,为过分追求服务的细粒度化而导致整合计划整体逾期,最后导致整合计划 无法部属和实施。分析其失败原因,是没有很好的理解s o a 概念注重“a 的要点, 而一心去设计“s 。由此可见,s o a 整体体系的重要性。 1 3 论文的研究内容与组织结构 本课题在分析现有e a i 解决方案的基础上,结合面向服务架构与w e b 服务技术, 以及一些企业应用集成相关技术( 如企业流程管理与企业服务总线) 研究面向服务 的电力企业应用集成解决方案。 全文共分为六章: 第一章绪论。简要介绍了选题背景、意义、国内外研究现状。 第二章现有集成方案分析。简要介绍了传统企业应用集成方案,从集成技术和 集成模式上分析了传统集成方案的特点及不足;进一步介绍了新技术面向服务 的体系结构及面向服务的集成模式。 第三章基于s o a 的电力企业应用集成框架设计。给出了面向服务的电力企业应 用集成框架与集成方法,详细描述了该框架的工作机制及特征。 第四章电力企业应用集成设计与实现。重点设计并实现了该框架各个不同层次 的集成模型和服务,并结合一个实例验证了这一框架的可行性。 第五章总结与展望。总结本文研究成果,展望下一步研究目标。 3 华北电力大学硕士学位论文 第二章现有集成方案分析 2 1 企业应用集成概述 企业应用集成是最近几年企业信息化的热点,它出现的目的就是为了整合企业 中各种不同的应用系统,但是就术语的精确定义而言,目前还没有普遍接受的定义。 下面列举有代表性的表述方式。 美国o v u m 咨询公司的k a t yr i n g 博士在为公司撰写的一份自皮书中把e a i 定义为:“通过技术和业务过程的结合,使定制开发的和套装的业务应用软件之间 能够以一种各方都能够理解的格式和语义背景进行业务层的信息交换【_ 7 1 。 美国著名的i t 媒体i tt o o l b o x 对e a i 的定义是:“通过硬件、软件、标准和业 务过程的结合,实现两个或多个企业系统之间的无缝集成,使他们能够统一运作 【8 】 o m a r cb u y e r s 对e a i 的定义是:“e a i 是一个持续的对企业信息基础设施进行完 善的过程,以便创建一种合理的环境,使业务人员能够依靠它很容易的实现对新业 务过程的实施和对原有业务过程的更改”【9 】。 从上面的定义可以看出,k a t y r i n g 的定义从应用软件的角度出发,强调使不同 应用软件之间能够按照业务的需要进行信息交换;i tt o o l b o x 的定义从企业系统的 角度出发,强调系统之间的无缝集成;m a r cb u y e r s 的定义则结合了企业信息基础设 施和业务过程两个方面,并更多地注重于后者,强调业务过程实旌在e a i 中的目标 地位。 基于上面的观点,本文对于e a i 的定义是: 企业应用集成是利用各种信息技术将业务流程、应用软件、硬件和各种标准联 合起来,在两个或更多的企业内部应用系统或企业间的应用系统之间实现无缝集 成,使它们像一个整体一样进行业务处理和信息共享的过程。 2 2 传统企业应用集成解决方案 从体系结构来看,传统的企业应用集成方案主要有两类:点对点的集成方案和 基于中间件的集成方案。 2 2 1 点对点的集成 在点对点的集成中,企业信息系统( e n t e r p r i s ei n f o r m a t i o ns y s t e m ,e i s ) 之间 4 华北电力大学硕士学位论文 通过各自不同的接口进行点到点的简单连接从而实现信息和数据的共享。这一方式 适用于少量系统间业务的集成,具有开发周期短、技术难度低的优势。但是,当需 要整合的应用系统越来越多时,点对点集成方式将把整个企业信息系统变成无法管 理的“混乱的线团”。此外,点对点的集成是紧耦合的,当一个应用系统变化时, 所有与其相关的接口程序都需要重新开发或调试。如图2 1 所示。因此,这种方法 很难集成大量的应用系统,且集成的系统越多维护就越困难。 2 2 2 基于消息中间件的集成 图2 1 点对点集成 为了克服点对点集成的缺点,逐渐出现了基于中间件的企业应用集成方案。基 于中间件的集成( m i d d l e w a r e - b a s e di n t e g r a t i o n ) 1 0 】通过建立一个由中间件组成的企 业应用底层架构,来联系整个企业的异构应用。中间件提供通用接口,所有的集成 应用可以用其相互传递消息,它起到提供一个应用程序间协调点的作用。每个接口 定义了一个由另一个应用程序提供的商业过程。图2 2 所示的就是一个使用了中间 件集成的框架。 图2 2 基于消息中间件的集成 消息中间件和应用程序之间的紧密耦合使所有的应用程序都需要了解与其集 成的其他应用程序的内部工作方式。系统之间的集成都是粒状的,并且通过消息类 s 华北电力大学硕士学位论文 型紧密耦合。传统e a i 实现中所使用的业务流程管理工具是私有的,这阻碍了最优 产品的应用。 2 2 3 传统企业应用集成方案的局限性 以上介绍的是传统的企业应用集成解决方案,这些方案在一定程度上解决了现 实中的一些问题,在企业应用集成中也取得了一定的成功,但是相对于目前企业面 临的许多实际问题,这些方案还存在着许多缺陷。 ( 1 ) 点到点的集成方案的基础架构较为脆弱,每一个连接都需要单独开发相 应的接口程序,缺少灵活性,并且很难保证数据的及时传递和一致性,这种解决方 案只能构建在各自系统中,应用之间的藕合度较高,实际应用范围较为狭窄。 ( 2 ) 基于消息中间件的企业应用集成在灵活性和可扩展性都较点到点的集成 的好,利用分布式对象技术也能很好的实现分布式计算,而且也取得了相当大的收 益,但是在i n t e m e t 环境下,由于不同厂商提供的组件各自有一套独立的体系结构 和私有协议,不同的组件之间无法进行直接的数据交换和数据共享,因而组件之间 互操作十分不便,实施起来通常会涉及到使用私有集成适配器,这必将导致更高的 费用和复杂的连接性,从而限定了它们的广泛应用。 因此,传统的集成方案由于其自身的局限性和互操作性问题,难以适应企业应 用集成的发展需求。下面将要提出的基于s o a 技术具有跨平台的性能,充分克服 了前面技术的缺点,为应用集成带来了新的活力。 2 3 面向服务的体系结构 2 3 1s o a 的概念 s o a 不是一个新的概念,早在1 9 9 6 年,美国知名i t 市场调研顾问公司g a r t n e r 最早提出s o a 的预言【】,2 0 0 2 年1 2 月,g a r t n e r 又提出了s o a 是“现代应用开发 领域最重要的课题 ,并预计到2 0 0 8 年,s o a 将成为占有绝对优势的软件工程实践 方法,它将结束传统的整体软件体系架构长达4 0 年的统治地位,主流企业现在就 应该在理解和应用s o a 开发技能方面进行投资。面向服务的架构可以看成是应用 程序架构开发的下一个革命性步骤,一个用模块化和松耦合应用程序取代单一、紧 耦合应用程序的革命【l2 1 。可见s o a 将给软件工业带来革命性的变化,s o a 到目前 为止没有一个明确的官方定义,综合各方面的资料,本文给出的s o a 定义如下: ( 1 ) s o a 是一个组件模型 它将应用程序的不同的功能单元( 称为服务) 通过这些服务之间定义良好的接 口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的 6 华北电力大学硕士学位论文 硬件平台、操作系统、中间件容器和编程语言。这使得构建在这样的系统中的各种 服务以统一和通用的方式进行交互。 ( 2 ) s o a 是一种软件设计方法学 s o a 的目的是最大限度地重用现有的服务以提高企业信息系统的适应性和效 率。s o a 要求开发人员在开发新的功能服务时要首先考虑重用现有的服务,并要考 虑到新的服务也有可能在以后被重用,所以要用中立的标准来定义服务接口。面向 服务的分析与设计是面向对象技术的扩展和补充,它是在更大范围内对软件系统的 建模方法。 ( 3 ) s o a 是概念模式,需要具体的实现技术 前面也说过s o a 不是新概念,已经存在了数年,但只是在出现了基于标准的 集成技术( 如w e bs e r v i c e s ) 之后,s o a 才开始被加速采用。在w e bs e r v i c e s 技术 出现之前,s o a 是用c o r b a ( c o m m o no b j e c tr e q u e s tb r o k e ra r c h i t e c t u r e ,公用对 象请求代理体系结构) 或d c o m ( d i s t r i b u t e dc o m p o n e n to b j e c tm o d e l ,分布式组 件对象模型) 技术来实现,由于c o r b a 和d c o m 存在着许多的不足,所以s o a 的思想一直没有被广泛采用。 2 。3 。2s o a 参考模型 面向服务的体系结构中的角色如图2 3 所示。 图2 - 3s o a 参考模型 ( 1 ) 服务使用者:服务使用者是一个应用程序、一个软件模块或需要一个服 务的另一个服务。它发起对注册中心中的服务的查询,通过传输绑定服务,并且执 行服务功能。服务使用者根据接口契约来执行服务。 ( 2 ) 服务提供者:服务提供者是一个可通过网络寻址的实体,它接受和执行 来自使用者的请求。它将自己的服务和接口契约发布到服务注册中心,以便服务使 用者可以发现和访问该服务。 ( 3 ) 服务注册中心:服务注册中心是服务发现的支持者。它包含一个可用服 7 华北电力大学硕士学位论文 务 的存储库,并允许感兴趣的服务使用者查找服务提供者接口。 面向服务的体系结构中的每个实体都扮演着服务提供者、使用者和注册中心这 三种角色中的某一种或多种。面向服务的体系结构中的操作包括: ( 1 ) 发布:为了使服务可访问,需要发布服务描述以使服务请求者可以查找 它。发布服务描述的位置可以根据应用程序的要求而变化。 ( 2 ) 查找:服务请求者定位服务,方法是查询服务注册中心来找到满足其标 准的服务。 ( 3 ) 绑定:最后需要调用服务。在绑定操作中,服务请求者使用服务描述中 的绑定细节来定位、联系和调用服务,从而在运行时调用或启动与服务的交互。 2 3 3s o a 与传统集成架构的比较 s o a 与传统的企业应用集成架构的主要区别在于,基于s o a 的企业应用系统 使用基于标准的服务,基于标准的服务成了应用间的集成点。服务的编排和组合增 加了服务的灵活性、重用性和集成性。表2 1 给出了s o a 与分布式组件架构的不同 点。 表2 1 分布式组件架构与s o a 对比 分布式组件架构 s o a 面向功能面向流程 设计目的是为了维持现状 设计目的是为了适应变化 开发周期长交互式和重用性开发 成本为中心 业务为中心 应用阻塞服务协调 紧密耦合 敏捷的和松耦合的 同构技术异构技术 面向对象 面向消息 需深入了解实施细节独立于实施细节 与传统分布式组件架构相比,s o a 具有以下更多优势: ( 1 ) 集成现有系统,不必另起炉灶。通过使用适当的s o a 框架,并使其用于 整个企业,可以将业务服务构造成现有组件的集合。使用这种新的服务只需要知道 它的接口和名称。服务的内部细节以及在组成服务的组件之间传送的数据的复杂性 都对外界隐藏了。这种组件的匿名性使组织能够利用现有的投资,从而可以通过合 并构建在不同的机器上、运行在不同的操作系统中、用不同的编程语言开发的组件 来创建服务。已有系统可以通过w e b 服务接口来封装和访问。 8 华北电力大学硕士学位论文 ( 2 ) 统一了业务架构,可扩展性增强。在所有不同的企业应用程序之间,基 础架构的开发和部署将变得更加一致。现有的组件、新开发的组件和从厂商购买的 组件可以合并在一个定义良好的s o a 框架内。这样的组件集合将被作为服务部署; 在现有的基础构架中,从而使得可以更多地将基础架构作为一种商品化元素来加以 考虑增强了可扩展性。又由于面向服务的敏捷设计,在应对业务变更时,有了更强 的“容变性 。 ( 3 ) 加快了开发速度,减少了开发成本。随着业务需求的发展和新的需求的 引入,通过采用s o a 框架和服务库,为现有的和新的应用程序增强和创建新的服 务的成本大大地减少了。同样,开发团队的学习难读也降低了,因为他们可能已经 熟悉了现有的组件。 ( 4 ) 以流程为中心的体系结构:现有的体系结构模型和实践往往是以程序为 中心的。应用程序是为了程序员的便利而开发的。通常,流程信息在组件之间传播。 应用程序很像一个黑匣子,没有粒度可用于外部。重用需要复制代码、合并共享库 或继承对象。在以流程为中心的体系结构中,应用程序是为过程开发的。流程可以 分解成一系列的步骤,每一个步骤表示一个业务服务。实际上,每个过程服务或组 件功能都相当于子应用程序。将这些子应用程序链接在一起可以创建能够满足业务 需求的流程流。这种粒度允许利用和重用整个组织中的子应用程序。 2 4 面向服务的集成模式 在面向服务的软件体系结构中,其核心思想就是以服务为中心。面向服务的软 件体系结构将企业应用构建成为服务的集合,一些大型的企业应用可以将独立的企 业过程以服务的形式封装起来。通过标准的协议,这些服务可以由企业边界内部或 者跨越企业边界的其他服务调用。采用面向服务的软件体系结构结构企业应用,使 得新的企业应用可以构建在已有服务的基础之上,成为组合服务。另外由于采用了 标准的协议访问和调用服务,使得服务可以做到位置独立。使用服务的用户也可以 通过对服务注册中心的查找获得服务的描述信息。获取描述信息后,用户可以与服 务协商调用的接口,实现对服务功能调用的绑定。 基于s o a 的企业应用集成,称之为“面向服务的集成( s e r v i c e o r i e n t e d i n t e g r a t i o n ,s o i ) 。面向服务的集成提供了一个抽象的接1 2 1 ,通过这些接口,系统 可以进行交互,而不是使用底层的协议和自定义的编程接口,来规定系统如何与其 它系统进行通讯。系统只需要以服务的形式出现,选择与该系统交互的其它系统, 能够简单发现那些服务,并且在运行的时候或者是设计的时候,与这些服务绑定。 以前业务方面的应用程序,仍然可以使用,但是由于缺少现代的接口,不能被重用。 面向服务的集成使得企业能够在己有的应用中提供可重用的服务的功能。 9 华北电力大学硕士学位论文 这种新型模式在概念定义上将集成过程从程序层提升到信息( 文档) 与传输( 通 信) 层。通过将信息从使用它的应用程序中分离出来,以清晰的文本形式对其进行 展现,甚至应用程序自身的运行功能和调用方法也可通过x m l 形式进行描述与展 现,这使其能够在不考虑所处位置、最初开发方式以及具体运行平台的情况下自由 执行。 2 5s o a 的实现技术一w e bs e r vic e 在s o a 架构下,服务成为应用系统的基本单元,使得i t 与业务有机地结合在 一起。s o a 是一个概念,方法学,一种模型。而w e b 服务呢? 它是一种具体的实 现技术。w e b 服务是目前最适合实现s o a 的技术之一【1 3 1 。w e b 服务建立在开放标 准和独立于平台的协议的基础之上。w e b 服务通过h t t p ( h y p e r t e x tt r a n s f e r p r o t o c o l ,超文本传输协议) 使用s o a p ,以便在服务提供者和消费者之间进行通信。 服务通过w s d l 定义的接口来公开,w s d l 的语义用x m l 定义。u d d i ( u n i v e r s a l d i s c o v e r y ,d e s c r i p t i o n ,i n t e g r a t i o n ,统一描述、发现和集成) 是一种语言无关的协议, 用于和注册中心进行交互以及查找服务。所有这些特性都使得w e b 服务成为开发 s o a 应用程序的优秀选择。 实现一个完整的w e b 服务体系需要有一系列的协议规范来支撑,w e b 服务体系 呈现一种栈的结构【l4 1 ,w e bs e r v i c e 互操作协议栈如表2 2 所示。 表2 - 2w e b 服务互操作协议栈 服务发布、发现 u d d i 服 服务描述w s d l 安管务 服务调用 s o a p 全理质 消息编码x m l j 莹 里 传输网络层 h t t p 、t c p i p w e b 服务协议栈的基础是网络层。w e b 服务要被服务请求者调用,就必须可以 通过网络访问。因特网上可以公用的w e b 服务使用普遍部署的网络协议。h t t p 凭 借其普遍性,成为了因特网可用的w e b 服务真正的标准网络协议。w e b 服务还可以 支持其它因特网协议,包括s m t p ( s i m p l em a i lt r a n s f e rp r o t o c a l ,简单邮件传输协 议) 和f t p ( f i l et r a n s f e rp r o t o c a l ,文件传输协议) 【b 】。 构建、e b 服务的核心与基础是x m l 、s o a p 、w s d l 和u d d i 这四个结构单元: ( 1 ) w e b 服务实现的基础x m l 可扩展标记语言是基于文本的、自描述的结构化语言,是w e b 服务平台中表示 1 0 华北电力大学硕士学位论文 数据的基本格式。x m l 完全独立于平台和编程语言,所以特别适合作为不同应用 之间进行数据交换和消息传递的数据载体。它是w 3 c ( w o r l dw i d ew e bc o n s o r t i u m , 万维网联盟) 提出的表示数据语义信息的标准,其目的不仅在于满足不断增长的网 络应用需求,同时还希望能够确保在通过网络进行交换合作时,具有良好的可靠性 和互操作性。 ( 2 ) w e bs e r v i c e 实例的调用s o a p x m l 使数据易于理解和共享,但应用实体之间要发送和接收x m l 文档,还需 对网络协议、访问点等细节达成共识。w e b 服务实体间使用简单对象访问协议s o a p 交换x m l 编码信息。s o a p 是基于x m l 的消息协议,它能使在分布式环境下的 程序相互交换结构化的事先定义好的信息【l6 1 。s o a p 是服务使用者和服务提供者共 同遵守的消息格式,由于它也是基于x m l 技术,所以s o a p 是独立于编程语言和 操作平台的消息协议,能使在异构环境下的应用程序相互通讯和操作。 ( 3 ) w e bs e r v i c e 接口的描述w s d l 在应用程序调用一个w e b 服务之前,必须知道其调用接口。w e b 服务采用 w s d l 来描述其服务接口。w s d l 是用于描述w e b 服务的一种x m l 语言。w s d l 将w e b 服务定义为网络端点的集合,用类型、消息、端口类型、绑定、端口和服务 等元素来描述服务接口。其中,“类型”是消息的数据类型定义;“消息代表待传 输的抽象定义;“端口类型”表示抽象操作的集合;“绑定 使操作和消息、的具体 协议与数据格式规范关联;“端口指定一个用于绑定的地址,由此定义一个通信 端点;“服务 则是相关端口的集合【l7 1 。在w s d l 中,端点和消息的抽象定义与具 体的网络布置和数据格式绑定是相互分离的,这样就可以抽象定义消息和端口类 型,实现它们的重用。 ( 4 ) w e bs e r v i c e 服务注册与发现机制u d d i 为了使服务请求者能够查找到所需要的服务,业界制订了注册和查找w e b 服务 的u d d i 技术规范。u d d i 标准定义了w e b 服务的发布与发现的方法,u d d i 基于 一套开放的工业标准包括:h t t p 、x m l 、x m ls c h e m a 和s o a p ,u d d i 为公开发 布的服务和只在公司内部使用的服务提供一个可互操作的基于w e b 服务的软件基 础架构【j 。 华北电力大学硕士学位论文 第三章基于s o a 的电力企业应用集成架构设计 3 1 电力企业应用集成现状 随着全球化对中国经济的日趋影响,愈来愈激烈的市场竞争对电力公司经营能 力提出了更高的要求,相应的对信息化水平的要求也更高。电力公司的信息化建设 面临着一系列的挑战,其中在应用集成领域存在主要问题表现为: ( 1 ) 现有营销管理各类业务应用普遍缺乏与财务、物资、人力资源等业务应 用的集成,无法有效满足信息的实时集成共享的需求。直接导致财务账目与营销账 目不完全一致,难以及时与法律部门协作进行和合同审核,难以控制用电检查人员 资质等实际问题。 ( 2 ) 绝大多数现有协同办公业务应用缺少与外部应用之间的整合。在信息调 研方面,尚未建立起固定的渠道来获得生产、营销、财务等其他各专业业务应用的 信息和数据。 ( 3 ) 协同办公领域内部各业务应用模块建设分散,模块之间也缺少集成关系, 在已有的系统中,普遍欠缺公文与档案系统的集成。 ( 4 ) 现有综合管理各类业务应用普遍缺乏与财务、物资、人力资源、项目管 理等业务应用的集成,无法有效满足信息的实时共享需求。 上面存在的问题成为了企业加强集中式管理、协调各部门业务能力和执行能 力、提高员工绩效和企业产出的瓶颈。 为此,电力公司将通过应用集成平台打破应用间的壁垒,实现信息在企业间的 全方位共享和业务流程的无缝对接,实现各相关业务领域的协同协作,提高业务执 行效果和效率,将电力公司的整体运营保持在一条科学、可持续发展的道路上。 3 2 设计目标 对于s o i 的理解不能狭隘地只停留在应用系统之间互连的层面上,s o i 的体系 结构应该体现出s o a 的动态特性。依照s o a 体系结构来建设、改造、封装各类企 业服务,使得这些服务可以被简单地发现、调用、管理。同时,基于的企业应用集 成系统可以随着企业业务的变化而逐渐变化,能够实现“柔性化”的软件系统。服 务在整个s o i 系统中是二个相对概念,因为一个服务可以由若干更小的服务按照一 定的互动规则组成,因此整个体系和内部的各个基础服务概念都是广义和可嵌套 的。 s o i 通过提供一个构建、部署和管理集成的体系框架,减少了不同类型的系统 1 2 华北电力大学硕士学位论文 的依赖性,降低了集成费用和操作的复杂性,可以提高已部署系统的灵活性。这个 新的方式超出了传统集成的范围,能够合理化地将有用的技术进行合并,同时排除 了抑制业务创新的障碍。根据上面的论述,构建一个s o i 框架的体系结构应满足特 定的要求,这些要求包括: ( 1 ) 可以重用现有的资产。现有的应用系统很少可以被抛弃,它们通常都包 含对于企业很有价值的东西。s o i 框架必须有能力集成现有系统,以便随着时间的 推移,可以在管理、渐进式项目中分化或替代它们,以期获得更大的投资回报率。 ( 2 ) 具有良好的兼容性。任何应用系统的传输协议,不管是j 2 e e 、n e t ,还 是w e bs e r v i c e s 等,它都能够提供支持并进行相应的协议转换,不管是同步服务还 是异步服务事件都能处理。 ( 3 ) 基于开放标准而构建。基于开放标准而不是使用专有的和厂商自定义的 技术来构建s o i 框架,使得集成更容易,解决方案的选择面更广同时,如果以后选 择新技术,移植将更为便利。 ( 4 ) 服务的地址和传输协议的透明化。也就是说客户端调用s o i 框架中的服 务时不需要知道服务的具体实现。当客户端通过s o i 框架调用这些服务时,s o i 框 架将会代理调用这些服务。 3 3 设计原则 对s o a 进行建模和实施是一项非常有难度的工作,因为服务的概念更进一步 的提高了抽象的水平,它的最终目的是逾越业务和软件之间的鸿沟。为了充分利用 s o a 的优势,本文在设计应用系统架构时,遵循了一定的原则。下面从s o a 整体 和服务两个方面规范s o a 的设计原则。 1 、整体方面s o a 设计原则: ( 1 ) 必须完全理解企业的业务需求,以及企业未来的发展趋势。 ( 2 ) 必须清晰所有服务之间的关系,服务之间要保证良好的松耦合关系,或 者将依赖性减至最少,从而使系统达到较高的灵活性和敏捷性。 ( 3 ) 在配置和使用这些服

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论