




已阅读5页,还剩62页未读, 继续免费阅读
(计算机应用技术专业论文)基于soa的事件驱动企业应用集成技术研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江大学硕士学位论文基于s o a 的事件驱动企业应用集成技术研究 摘要 新兴的面向服务体系结构正在加速软件的发展和变化,无法适应动态环境的 应用将逐渐失去作用,尤其对那些面i 临着需求频繁变更的业务流程管理系统而言 更是如此。本文主要针对当前企业应用集成研究中的忽视业务流程集成、集成平 台缺乏灵活性和适应性、扩展性较差、互操作性不高等问题,提出了基于s o a ( s e r v i c eo r i e n t e da r c h i t e c t u r e ) 的事件驱动型企业应用集成系统一一s e e a i ( s e r v i c e e v e n t 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 ) 。它具有松散耦合、 行业支持、高度可集成能力等优势。本文主要讨论基于s o a 的企业应用集成的体 系架构,企业应用集成体系中各个不同层次集成模型和服务。 首先,对企业应用集成的研究现状进行了综述,进而提出了本文的研究目标。 然后,在简单分析传统的企业应用集成技术优点和缺点的基础上,提出了目 前e a i 所面临的挑战和障碍。综合当前企业集成技术最先进的体系架构面向服务 体系结构( s e r v i c eo r i e n t e da r c h i t e c t u r es o a ) 和事件驱动体系结构 ( e v e n t d r i v e na r c h i t e c t u r ee d a ) 两者的特点后,提出基于s o a 的事件驱动企 业应用集成的体系架构,该架构是一个综合e d a 乖s o a 的混合系统架构,可为企 业提供现代的、灵活的i t 基本架构,充分体现系统的灵活性和重用性。 在对企业应用服务的定义、分类基础上,提出了s e e a i 中服务层次模型一 一包括应用接口层,应用整合层,业务整合层和用户交互层等四个层次,其中底 层服务包括:应用接口服务、数据整合服务和消息服务。应用接口服务描述了系 统支持的两类适配器,并提出了形式化定义的自定义适配器模型。数据整合服务 从数据格式转换和语义转换两方面提供企业应用数据之间的转换和映射。消息服 务是整个系统的通信服务层,是分布式体系的具体实现,在此我们提出了基于j m s 的消息对象模型及两种消息机制的实现。 在企业集成基础服务的基础上,论文提出了基于e c a 规则的事件驱动模型和 业务流程元模型,并提出了利用工作流机制来实现业务整合的体系模型。最后从 安全的角度出发,提出了基于p m i ( p r i v i l e g em a n a g e m e n ti n f r as t r u c t u r e ) 及 s s o ( s i n 9 1 es i g n o n ) 的企业信息系统用户和登陆集成的模式。 最后,我们把s e e a i 应用到航天应用集成设计平台这个项目中,取得了一定 的应用效果,并总结了s e - e a i 需要进一步研究的一些方向。 关键词: 企业应用集成,面向服务的软件架构,事件驱动,企业服务总线, 浙江人学硕士学位论文基于s o a 的事件驱动企业应用集成技术研究 a b s t r a c t n o wt h ed e v e l o p m e n to fs o f f w a r ei sa c c e l e r a t e db ys e r v i c eo r i e n t e da r c h i t e c t u r e t h e s e e n t e r p r i s ea p p l i c a t i o n s ,w h i c hc a n ta d o p t t h ed y n a m i ce n v i r o m n e n t ,w i l ll o s ef u n c t i o n sg r a d u a l l y , e v e nt ot h o s eb u s i n e s sp r o c e s s m a n a g e rs y s t e m s t h a tf a c et od e m a n d c h a n g ef r e q u e n t l y ,t h i sp a p e r a i m sa tp r o p e l mo ft h ec u r r e n ts t u d yo 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 nt h a ti n c l u d e si g n o r i n g b u s i n e s sp r o c e s si n t e r g r a t i o n ,i n t e g r a t e da b i l i t yi sb a d ,f l e x i b i l i t yi sp o o r , a n di n t e r o p e r a b i l i t yi s n o tv e r yw e l la n ds oo n s ow e p r o p o s ee 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 nm a n a g es y s t e mb a s e d o ns o aa n de v e n t - d r i v e n s ee a i ( s e r v i c e e v e n t 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 h i c h i sa d v a n c e di nl o o s e - c o u p l e ,l o wc o s t ,h i g hi n t e g r a t i o na b i l i t y , e t c t h em a i n t o p i co ft h i sp a p e ri s a b o u tt h ea r c h i t e c t u r eo f t h ee a ib a s e do ns o a i t sm o d e la n dt h es e r v i c e a tf i r s t ,as y s t e m a t i cs u r v e yo fe a lm a n a g e m e n tr e s e a r c hi s g i v e n ,a n dt h e nt h es t u d y o b j e c t i v e so f t h i st h e s i sa r ep r e s e n t e d s e c o n d l y , w ea n a l y z et h ee x c e l l e n c ea n ds h o r t c o m i n g so ft h et r a d i t i o n a lt e c h n i q u eo fe a i t h e nw ep r o p o s et h ec h a n l a g ea n dd i f f i c u l t yf a c e db ye a i w ec o m b i n et h ea d v a n c e dt e c h n o l o g y : s o aa n de d a ,t h e nw ep r o p o s et h ea r c h i t e c t u r eo ft h ee v e n t - d r i v e ne a ib a s e do ns o a ,w h i c h c a ns u p p o r tt h em o d e mf l e x i b l ee n t e r p r i s ei ti n f r a s t r u c t u r ea n ds h o wt h er e u s ea n d f l e x i l i t yo f t h i s s y s t e m a f t e rd e f i n i n ga n dc l a s s i n gt h ee n t e r p r i s ea p p l i c a t i o ns e r v i c e ,w ep r o p o s et h es e r v i c el a y e r m o d e li ns e - e a i ,i n c l u d i n ga p p l i c a t i o ni n t e r f a c el a y e la p p l i c a t i o ni n t e r g r a t i o nl a y e r , b u s i n s s i n t e r g r a t i o nl a y e r a n du s e ri n t e r a c t i o n l a y e r t h e r e a r e a p p l i c a t i o n i n t e r f a c e s e r v i c e ,d a t a i n t e r g r a t i o ns e r v i c ea n dm e s s a g es e r v i c ei ni n f r a s t r u c t u r es e r v i c e s a p p l i c a t i o ni n t e r f a c es e r v i c e d e s c r i b e st w ot y p eo f a d a p t e ra n d t h em o d e lo ft h ea d a p t e r d a t ai n t e r g r a t i o ns e r v i c es u p p o r tt h e d a t ac o n v e r s i o na n dm a p p i n gb e t w e e ne n t e r p r i s ef r o mt h ef o r m a t ec o n v e r s i o na n ds e m a n t i c c o n v e r s i o n m e s s a g es e r v i c ei st h ec o m m u n i c a t i o ns e r v i c e w ep r o p o s et h em e s s a g em o d e lo n j m s b a s e do nt h e s ei n f r a s t r u c t u r es e r v i c e s ,t h i sp a p e rp r o p o s et h ee c ae v e n t d r i v e nm o d e la n d t h eb u s i n e s sp r o c e s sm o d e l ,t h e nd i s c u s sh o wt oi m p l e m e n tb u s i n e s si n t e r g r a t i o nb yw o r k - f l o w a t l a s t c o n s i d e r i n gt h er e q u i r e m e n to fs e c u r i t y , w ep o r p o s et h em o d e lo fu s e rm a n a g ea n du s e r s i g n - o nb a s e do np m l ( p r i v i l e g em a n a g e m e n ti n f r a s t r u c t u r e ) a n ds s o ( s i n g l es i g n - o n ) l a s t l y , w ea p p l i e ds e e a ii n t ot h ec a s c c i n f o r m a t i o ni n t e g r a t i o np l a t f o r ma n dg o ts o m e a d v a n t a g e s a tl a s t ,w eg i v es o m ed e 印r e s e a r c h f i e l d so ns e - e a ii nt h ef u t u r e k e y w o r d s :e n t e r p r i s e a p p l i c a t i o ni n t e g r a t i o n , e a i ,s e r v i c eo r i e n t e d a r c h i t e c t u r e ,s o a ,e v e n t d r i v e n ,e s b - 2 - 浙江大学硕士学位论文 基于s o a 的事件驱动企业应用集成技术研究 1 1 引言 第一章绪论 信息化的发展给企业带来了难得的机遇,同时也给企业带来了新的挑战。当 今社会对信息的获取要求越来越简化,这对应用开发工作提出了新的挑战。目前 大多数公司采用的分散孤立的应用程序并不能满足这种要求,因为在这些应用程 序之间共享数据是很困难的,不可避免地形成一个个信息孤岛。然而,这些企业 并不能一夜之间就将他们的那些孤立程序全部放弃或替换,因为它们都是一些关 键业务,而且在当前的商业环境下从零开始重新开发他们的整个信息系统常常是 不合算的。 另外,很多企业需要不时地引进各种新的应用和系统。很重要的一点就是这 些新方案是基于最新的体系架构,他们与原有的老系统的体系架构有着很大地不 同。如何有效地解决这些问题,成功实施企业应用的整体集成,是每一个企业必 须解决地问题。 企业应用集成( e n t e r p r i s e a p p l i c a t i o ni n t e g r a t i o n ,简称e a i ) 是企业信息技术 发展的一个主要趋势,它是企业实现业务自动化的基础。e a i 已经成为最近几年 应用程序和信息系统开发的驱动力。企业成功实施e a i 的关键在于把e a i 提升到 一定的高度,即在考虑企业应用架构之初就要全盘考虑企业的i t 应用环境,在对 其进行整体规划的基础上。建立一个完整的应用集成架构。一方面,对于已经拥 有庞大i t 基础设施的企业而言,应以业务为主导,形成完整的业务流程,确定哪 些应用之间需要进行数据交换,并明确如何将相关的业务流程集成在一起,另一 方面,对于刚刚开始信息化建设的企业来说,首先要搭建合理的应用集成架构, 有了完整的集成架构,在添加新的业务模块时就可以很方便地将它们插入集成框 架之中,使新地业务流程与已有地业务流程自然地衔接在一起,实现应用集成的 目标。 1 2 企业应用集成简介 1 2 1 企业应用集成背景 根据m e t ag r o u p 的统计,一家典型的大型企业平均拥有4 9 个应用系统,3 3 的i t 预算是花在传统的集成上,通过零星的“点对点”连接,使众多的“信息孤 浙江大学硕士学位论文 基于s o a 的事件驱动企业应用集成技术研究 岛”联系起来,以便让不同的系统之间交换信息。根据摩根斯坦利公司对大企业 c i o 的调查,在这些主管企业信息化人士所关心的问题中,如何将众多的企业应 用系统集成起来,是他们最为关注的热点。孤立的信息系统无法有效地提供跨部 门、跨系统的综合性的信息,诸如:某个主要的订单的状况怎样? 谁是我的最重 要的客户? 这个季度的任务能否完成? 等等。 孤立的信息系统也无法实现实时的信息存取和对业务流程的透视,无法实现 对客户、供应商、项目、订单、资产等的全面掌控,无法实现企业价值链的全面 的、彻底的透视和控制。 于是,企业对应用整合的需求应运而生。具体来说,主要的内、外在的驱动 力如下: 基于w e b 应用系统和打包应用的流行,如s a p 追求效率和控制成本 兼并和收购 技术的不断创新 x m l 技术的兴起 目前,大公司已逐渐接受“企业集成骨干网”的概念并对它的需求急剧增加。 所谓“企业集成骨干网”实际上是建立一个集成的可扩展的应用软件总线结构, 所有的应用可以“即插即用”。企业应用集成( e a j ) 已经成为实现企业主要战 略目标的必需手段和捷径。 1 2 2 企业应用集成的定义和目标 企业应用整合( e a i ) 的概念在i t 界提出和讨论已经有几年的历史了,最初大家 谈到的e a i 的概念,相对后来e a i 的发展来看,可以说是一个狭义上的e a i ,正如 其字面上的含义”e n t e r p r i s e a p p l i c a t i o ni n t e g r a t i o n ”,即企业应用整合,仅指企业 内部不同应用系统之间的互连,以期通过应用整合实现数据在多个系统之间的同 步和共享。 伴随着e a i 技术的不断发展,它所被赋予的内涵变得越来越丰富。现在大家 谈到的e a i 的概念,具有更为广义的内涵,它已经被扩展到业务整合( b u s i n e s s i n t e g r a t i o n ) 的范畴,业务整合相对e a i 来说是一个更宽泛的概念,它将应用整合 进一步拓展到业务流程整合的级别。业务整合不仅要提供底层应用支撑系统之间 的互连,同时要实现存在于企业内部应用与应用之间,本企业和其他合作伙伴之 间的端到端的业务流程的管理,它包括应用整合,b 2 b 整合,自动化业务流程管 理,人工流程管理,企业门户以及对所有应用系统和流程的管理和监控等方方面 浙江大学硕士学位论文基于s o a 的事件驱动企业应用集成技术研究 向。 同样,对于要实施e a i 的企业而言,e a i 也是分层次的,但对于如何划分和规 范e a i 层次的定义,业界并没有一个统一的标准。针对不同的企业,同样叫”企业 应用整合”,其内容和层次可能就会存在一定的差异;对于各家e a i 厂商,基于 e a i 理解的侧重点不同,也可以说出不同的答案。当前从最普遍的意义上来说, 比较宽泛的对e a i 概念的理解是认为e a i 可以包括数据集成、应用集成和业务流 程集成等多个方面。 出于本文的目的,在此做了e a i 如下定义:“e a l 是一种在企业中集成应用 程序和数据以便达到自动业务处理的规则和方法,是指在企业中的系统集成, 包括应用程序、数据和过程的集成。” e a i 技术和内容从不同的角度有不同的分类方法【4 6 卜从应用集成的对象来划 分可以分为面向数据的集成和面向过程的集成;从应用集成所使用的工具和技术 来划分的,可以分成六个层次,分别是平台集成、数据集成、组件集成、应用集 成、过程集成和业务对业务的集成。如果从企业组织角度e a i 可分为水平的组织 内的集成、垂直的组织内的集成和不同组织间系统的集成。 对于这些诸多的集成概念,我们可以从广度和深度两个维度来将其总括起 来。从集成的深度上则从数据集成、应用系统的集成再到目前的面向过程的集成, 集成的难度和能够取得的效益都是不同的。 e a i 的目标就是集成和流水线化跨越不同应用系统的过程,同时使企业的员 工、决策者和商业伙伴能够很容易的访问企业和客户的数据,而不管这些数据在 什么地方和哪个系统中。此外,e a i 更进一步的目标是集成跨企业和跨组织的信 息和过程,其中包括实现传输流、数据流、信息流、过程流和b 2 b 流。此处的流 是指以一种平滑、连续、实时或准实时的方式把数据发送给用户或系统。 1 2 3 企业应用集成关键功能需求 e a i 作为一个特殊系统必须具备许多功能,最主要的功能大体如下: 1 、消息处理系统是一个集中数据转换器和网关,它使企业间能实现以电子 方式交换结构化和非结构化信息,前者包括了发票、订单、报价单、提货单或电 子邮件等:后者则包括电子表单、c a d c a m 或图像文档等。消息处理系统用于 管理在授权商务伙伴间传递结构化应用的数据分配、抽取和删除,以及审计跟踪 信息,异常管理的错误和警告信息等。 2 、映射服务映射服务的目的是促成企业间数据转换,缩短建立应用集成器 与内外部应用连接所需要的时间。事实上,在非规范格式与规范数据格式之间建 浙江大学硕士学位论文 基于s o a 的事件驱动企业应用集成技术研究 立映射已属无奈,最理想的情况是交换各方从开始就采用一致的格式标准。映射 的另一个目标就是优化系统性能,降低维护成本。映射服务还包括映射开发与监 测等。 3 、目录服务功能该功能支持三种不同类型的注册,即位于主系统的本地注 册、位于v a n 上或者其他企业系统节点上的远程用户注册、直接连接业务伙伴的 直接注册。目录服务为所有的消息传递协调路由并发送简要格式文件,实际操作 时,目录服务在b 2 b 的交易项目选择中起至关重要的作用。 4 、业务处理过程的支持许多厂商都提供使用户可以可视地编制业务过程流 程图的工具。在业务流程图中,利用智能路由功能工具,对消息进行分析,并计 算出在业务过程的下一步根据消息应当做什么,同时用户可以为每条消息定义规 则。 5 、并发会话管理一个会话就是一个由企业节点上系统管理的动态信息处理 流,当数据被路由至数据转换器时,就会生成一个会话,并发指同时运行的会话。 6 、安全性e a i 也必须满足一定安全要求,如身份认证、应用访问权限控制、 数据加密等。 7 、审计服务功能运行审计的目的是帮助系统优化,处理高峰交易量。审计 服务检查企业系统性能与运行环境监控。作业审计还能提醒触发通知处理,如个 人寻呼系统、电子邮件、s n m p 捕获或用户自定义的程序,可配置审计日志提醒 功能来为用户定义的事件监测系统的事件,这对提供2 4 , 1 , 时的热线帮助或者关键 的有效性日常检查尤其有用。 1 3 本文的研究内容 基于s o a 的事件驱动型企业应用集成技术研究的主要目标是勾画企业应用 集成架构并建立基础化平台,该架构能够将企业遗留系统和正在使用中的企业应 用灵活的集成到一个虚拟的企业信息系统中,使他们在这个虚拟的信息系统中更 自由方便的交换数据和使用企业应用提供的软件服务。现在具有高可靠性、高扩 展性和强适应性的面向服务技术已经成为未来发展的必然趋势。本文就是结合现 在快速发展的s o a 技术和事件驱动技术。对建立在事件驱动和面向服务的基础上 的体系结构及各个相关模块进行了深入的探讨。论文的研究内容及组织结构如 下: 1 ) 研究现有的典型企业应用集成技术的优缺点,如何借鉴最新的各种技术, 构筑一个基于事件驱动构架的可扩展性好、性能高、能适应大吞吐量的企业级企 业应用集成系统的体系结构。介绍企业应用中的面向服务的架构和事件驱动概 浙江火学硕士学位论文基于s o a 的事件驱动企业应用集成技术研究 念,提出在此基础上的企业应用集成系统。首先我们介绍几种典型e a i 的技术及 各自的优缺点;接着,我们分析了当前企业应用集成技术的发展趋势和最新技术, 介绍了面向服务体系结构( s o a ) 和事件驱动体系结构( e d a ) ,包括概念、相 关标准、实现架构和各自特点等,并分析了两者结合下的企业应用集成。最后, 文章讨论基于s o a 的事件驱动企业应用集成系统的工作机理以及系统框架。( 第 二童) 2 ) 提出e a i 中的服务概念和服务分类,建立e a i 平台中的基础服务。根据服 务的功能提出了服务逻辑层次模型。按照集成层次依次介绍企业应用集成管理系 统中的各基础服务模型( 子系统) 定义及实现技术,其中包括应用接口服务模型、 数据整合服务模型、消息服务模型。主要介绍了系统中的适配器模型、基于x m l 标准的数据格式和数据语义的转换以及j m s 的消息机制。( 第三章) 3 ) 采用事件服务、工作流服务和消息代理的等技术手段,提出了一种在面 向服务架构下的事件驱动的业务集成模型,并利用工作流机制来实现事件驱动业 务集成,最终实现企业应用的自动集成。还提出了基于p m i & s s o 的统一用户访 问和授权的安全机制,为e a i 平台提供了用户交互服务。重点介绍了事件和流程 的模型定义及工作流实现模型。( 第四章1 4 ) 我们把该模型应用到“基于a v i d m 系统的应用集成设计”这个项目中, 分析了航天企业制造自动化的现状以及问题,展现了将系统应用到航天信息化集 成平台过程中的一些优点以及系统原型。( 第五章) 1 4 本章小节 本章对企业应用集成系统做了一个概括性的描述,并阐述本文的研究内容。 论文首先简单介绍了企业应用集成的背景和目的,然后综述了企业应用集成的研 究。第二节介绍了企业应用集成的产生背景、基本定义、目标和功能需求等;本 章的最后,我们介绍论文的研究内容。 浙江大学硕士学位论文基于s o a 的事件驱动企业应用集成技术研究 第二章基于面向服务架构( s o a ) 的事件 驱动e a i 架构 2 1 概述 根据上一章对企业应用集成的划分,从深度上分为数据集成( 实现不同系统 的数据交流与共享) ,应用系统集成( 实现不同系统的互操作) 和过程集成。集 成的较高层建立在较低层上,业务过程的集成需要首先集成所涉及的数据源和应 用程序,数据和应用程序的集成必须视为实旄过程服务的更高层服务以及由此产 生的业务扩展的基础,因此必须考虑为集成数据源和应用程序建立可靠的基础服 务框架。目前基础服务框架的建立主要集中在解决分布性和异构性的问题上。 事件技术是一种非常适合用于分布式异构系统之间松散耦合的协作技术,基 于事件技术的企业应用集成系统同样继承了这一优点。为了达到支持灵活的分布 式的协作,系统所依赖的事件服务系统必须是分布式的;另外,还要考虑系统的 可扩展性,所以作为基础结构的事件服务系统也必须是自治和对等,且能够动态 扩展的。功能强大同时又十分灵活机动的分布式事件服务系统是e a i 构建的基础 设施。 基于消息的集成架构是比较成熟的集成技术。消息机制是将数据、信息以消 息的方式在程序间传递来实现数据交互的一种触发机制,基于消息中间件的集成 较好地解决了数据在应用程序之间传递的同步和异步问题,能较好地实现企业应 用集成中的事件驱动机制。 体系结构设计是系统设计的起点,也是系统成功与否的关键之一。本章我们 研究基于事件驱动的企业应用集成系统的架构。本章其组织结构大致如下:第2 节,分析几种典型e a i 的技术;第3 节,介绍最新的e a i 技术;第4 节介绍介绍了 面向服务的事件驱动e a i 系统的基础设施与架构,简要介绍体系结构层次。 2 2e a i 所面临的障碍和挑战 2 2 1 传统集成技术 面向信息的集成技术 这是数据级集成的重要技术。信息集成主要采用数据复制、数据聚合和接口 浙江大学硕士学位论文 基于s o a 的事件驱动企业应用集成技术研究 集成。其中,接i s l 集成仍然是一种主流技术。它通过集成代理的方式实现集成, 即为应用系统创建适配器作为自己的代理,如果适配器的结构支持一定的标准, 则将极大的简化集成的复杂度,并有助于标准化。目前,j 2 e e 中的j c a 标准极 大地方便了企业应用集成,这项技术可以用来协调各企业信息系统之间的信息交 换和共享。 面向过程的集成技术 这是一种过程流集成的思想,它不需要处理用户界面开发、数据库逻辑、事务 逻辑,而只是处理系统之间的过程逻辑,和核心业务逻辑相分离。在结构上,面向 过程的集成方法新增定义了过程逻辑层;而在该结构的底层,应用服务器、消息 中间件提供了支持数据传输和跨过程协调的基础服务。对于提供集成代理、消息 中间件以及应用服务器的厂商来说,提供用于业务过程集成是对其产品的重要拓 展,也是目前应用集成市场的重要需求。这项技术可以用来完成不同应用系统之 间的整合,如实现电子商务系统和e r p 系统之间的业务结合。 2 3 2 高效e a i 所面临的挑战 我们可以看出,传统的企业应用集成存在着以下一些比较令人注意的问题: 1 ) 基本是面向功能的企业集成:上述的集成技术,都是从基于功能定义的 设计方式,只注重从技术和内容去分类,偏重于各自实现的功能,没有强调e a i 的各类集成间的相互关系和相互间的影响,以及作为一个整体对企业i t 的影响。 虽然这种方式相对简单和直观,但从宏观和长远角度上难以形成灵活配置和扩展 的体系架构,在管理上也不能提供适应多变的业务需求的有效i t 管控框架。 2 ) 忽视了企业的流程设计和集成:如果把i t 系统的流程逻辑看作是对企业 流程的模拟,我们就会发现面向功能的构架设计中存在的问题。在系统设计时, 传统方法往往简单地直接套用具体业务流程的实例,从流程功能定义角度考虑, 针对具体流程设计专门的紧密耦合式的集中流程控制逻辑,一旦内部流程变更增 加或者捆绑,就去重新开发新的流程控制逻辑而难以重用现有应用资源,导致流 程控制系统改动频繁,一处变更牵动全身。另一方面,基于流程功能定义角度的 设计方式往往缺乏全局性的宏观模型体系,仅仅考虑眼前的应用实现,流程或应 用系统之间随意性强,差异性巨大,可重用性差,难以实现数据与应用的共享, 也无法形成较为统一和通用的逻辑模型视图。 3 ) 缺乏必要的灵活性和适应性,扩展性较差:它们都是针对特定的软硬件 结构、网络环境或者特定的应用领域而进行研究和开发的。面对软硬件结构等的 动态变化,系统的自适应能力太差,有些甚至表现为无能为力。同时,他们是针 浙江大学硕士学位论文基于s o a 的事件驱动企业应用集成技术研究 对独立的应用提供的服务,系统的体系结果都是面向特定应用的,体系结构于整 个企业的组织毫无关系,使得系统毫无通用型可言,系统在企业中的可实施性比 较差。e a i 的目标就是让整个企业的所有系统都成了一个松散结构中的组件,系 统接口、应用通信、数据转换和目录信息都是建立在开放的、被广为接受的标准 之上,用户能迅速地访问到他们所需要的信息。所以上述技术很难实现这一目标。 4 ) 缺乏合理的粒度规则;e a i 开发需要选择合适的粒度。由于上述的技术 中没有考虑到组件要与现有应用程序相匹配,经常会选择了错误的粒度进行需求 分析和需求设计,从而导致了开发结果难于达到先前要求。组件的粒度很大方面 的影响了信息模型,如果粒度过大,则应用程序的内部有独立的商务逻辑和商业 观点,在集成过程中,很难于别的应用程序相协调,同时如果粒度过小,则会带 来不必要的复杂性。粒度问题也决定了商业流程逻辑的隔离性,它影响了适配器 和中间件组件的作用范围、包的隔离性以及操作的简单性。粒度也会对操作点和 操作层次的设计带来挑战。 5 ) 在系统安全方面不够灵活:e a i 体系架构中没有提出企业安全机制上的 实现和集成,使得系统的可靠性不够强壮,安全性下降。 e a i 提供一个开放的框架,使现有的应用程序和数据库可根据企业业务的需 要实现集成,并且能快速地添加新的应用和系统,使企业既可以保护已有的投资, 又可以根据市场和业务的需求重新整合原有的i t 系统,产生新的竞争力。需要 指出的是e a i 并不是一个最终解决方案,它是一个灵活的标准化的企业应用底 层架构。联系横贯整个企业的异构系统、应用、数据源等。它使新的i t 应用和 商业活动能够更容易和更有效的被部署,也使企业中的应用能够实时无缝地互相 通信,但e a i 的部署需要企业根据自身i t 状况进行配置和开发,所以理想的企 业应用集成方案必须满足以下条件3 1 : 基于工业标准,尽量减少在异构环境之间对私有适配器和连接器的需要。 松散的祸合,即请求不必针对特定应用的a p i 。 异步执行方式。使得在等待第一个应用的响应时可以执行第二个应用。 可靠性。保证消息被准确投递。 安全性。必须支持鉴别、授权标准以保护被交换信息的完整性。 浙江大学硕士学位论文 基于s o a 的事件驱动企业应用集成技术研究 2 4 企业应用集成的新技术 2 4 1 面向服务体系结构( s e r v i c e o r i e n t e da r c hi t e c t u r e s o a ) 随着企业计算的发展,企业级应用需求要求新的软件系统不再是从底层做 起,而只是依据企业逻辑需求重新组织己有的数据存储,将现有的数据和事务通 过新的渠道,比如i n t e m e t 浏览器或者手持设备呈现给用户。另外,为了提高企 业计算的高效性、可用性、规模性,现有许多的操作系统都是分布式操作系统, 运行在许多机器之上。这样的企业级解决方案就必须协调运行在群组硬件之上, 实现这种系统的一种方法就是将该系统组织成群组服务的模式,每一个服务都提 供一组定义良好的功能集合。整个系统其实就被设计和实现为一组相互交互的服 务,而将功能以服务的形式展现出来是该系统灵活性的关键。它使得系统中的某 些服务能够充分利用其他的服务同时却无需考虑其物理位置。系统通过添加新的 服务来不断的升级,这样就应运而生了面向服务的体系结构( s e r v i c eo r i e n t e d a r c h i t e c t u r e 。s o a ) 。s o a 定义了构成系统的服务,通过描述服务之间的交互提供 特定的功能特性,并且将服务映射为具体的某种实现技术。s o a 本身并不是一 个新的概念,比如在2 0 0 0 年就己经有了对s o a 这种应用模式的评价:“面向服 务的解决方案、应用程序以独立的交互服务的形式开发,为潜在的用户提供定 义良好的接口。同样的,也必须提供给应用程序开发人员相应的技术支持,比如 使他们能够浏览所有的服务,并且选中感兴趣的服务,用这些服务组装而成新的 功能”。 5 1 2 4 1 1s o a 定义 面向服务的体系结构( s o a ) 建立在分布式计算技术的基础上,这种体系结构 本质上是动态的,它提供对服务的登记、发现和调用的支持。在本文,我们认为 面向服务的体系结构s o a 提供了一种标准的系统模型,使得驻留在网络上的企 业应用能够被发布( p u b l i s h ) ,发现( d i s c o v e r ) 和调用( i n v o k e ) 。s o a 的软件开发人 员可以将企业应用系统以服务的形式通过网络发布,即任何服务应用程序都可以 同其它位置的基于服务的应用系统交互。许多行业分析家和专家将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 ) 定义为多种不同的形式,因而对s o a 有着不同的理解。 其中,比较权威的g a r t n e r 这样定义s o a :“服务面向架构( s o a ) 是一种 浙江大学硕士学位论文基于s o a 的事件驱动企业应用集成技术研究 c l e i n t s e r v e r 软件设计方法,其中应用含有软件服务和软件服务使用者( 也 称为客户或服务请求者) 。s o a 不同于通常的c l i e n t s e r v e r 模型,它更强调 的是软件组件之间的松散耦合和使用分散的标准接口。” s o a 只不过是一种体系结构。在业务环境中,s o a 的纯粹的体系结构定义 可能会是这样的“一种应用程序体系结构,在这种体系结构中,所有功能都定义 为独立的服务,这些服务带有定义明确的可调用接口,可以以定义好的顺序调用 这些服务来形成业务流程”。请注意这里的表述: 1 、所有功能都定义为服务。这仅仅包括业务功能、由底层功能组成的业务 事务和系统服务功能。 2 、所有的服务都是独立的。它们就像“黑匣子”一样运行:外部组件既不知 道也不关心它们如何执行它们的功能,而仅仅关心它们是否返回期望的结果。 3 、在其最一般的意义上来说,接口是可调用的;也就是说,在体系结构的 层面上,它们究竟是本地的( 在本系统内) 还是远程的( 在直接系统外) 、是用 什么互连s c h e m e 或协议来调用或需要什么样的基础架构组件来连接,都是无 关紧要的。服务可能是在相同的应用程序中,也可能是在公司内部网内完全不同 的系统上的不对称多处理器的不同地址空间中,还有可能是在用于b 2 b 配置的 合作伙伴的系统上的应用程序中。 2 4 1 2s o a 的组成 s o a 的主要组件包括服务、动态发现和消息。 服务是能够通过网络访问的可调用例程。服务公开了一个接口契约,它 定义了服务的行为以及接受和返回的消息。术语“服务”常与术语“提 供者”互换使用,后者专门用于表示提供服务的实体。 接口通常在公共注册中心或者目录中发布,并在那里按照所提供的不同 服务进行分类,就像电话簿黄页中列出的企业和电话号码一样。客户( 服 务消费者) 能够根据不同的分类特征通过动态查询服务来查找特定的服 务。这个过程被称为服务的动态发现。 服务消费者或者客户通过消息来消费服务。因为接口契约是独立于平台 和语言的,消息通常用符合x m l 模式的x m l 文档来构造。 面向服务的体系结构中的角色如图所示: 服务使用者:服务使用者是一个应用程序、一个软件模块或需要一个服 务的另一个服务。它发起对注册中心中的服务的查询,通过传输绑定服 务,并且执行服务功能。服务使用者根据接i = 1 契约来执行服务。 浙江大学硕士学位论文基于s o a 的事件驱动企业应用集成技术研究 服务提供者:服务提供者是一个可通过网络寻址的实体,它接受和执行 来自使用者的请求。它将自己的服务和接口契约发布到服务注册中心, 以便服务使用者可以发现和访问该服务。 服务注册中心:服务注册中心是服务发现的支持者。它包含一个可用服 务的存储库,并允许感兴趣的服务使用者查找服务提供者接口。 图2 - 1 :s o a 中的角色 面向服务的体系结构中的每个实体都扮演着服务提供者、使用者和注册中心 这三种角色中的某一种( 或多种) 。面向服务的体系结构中的操作包括: 发布:为了使服务可访问,需要发布服务描述以使服务使用者可以发现 和调用它。 发现:服务请求者定位服务,方法是查询服务注册中心来找到满足其标 准的服务。 绑定和调用:在检索完服务描述之后,服务使用者继续根据服务描述中 的信息来调用服务。 2 4 1 3s o a 的特点及优势 s o a 的特点 松散耦合:s o a 允许独立的开发服务的提供者和消费者而不用考虑各自的技 术组成。并且允许服务消费者在消费者和提供者所需交换信息的最低知识级 别上定义和发现自己感兴趣的服务。 请求响应:s o a 主要支持的交换为,一个特定的系统向服务提供者请求一 段信息或者请求执行一段程序,服务提供者接到请求后发出响应以提供所请 求的服务。 同步:s o a 主要支持同步的服务调用和执行。这意味者当消费者请求信息或 执行程序时,在源和目的两个系统间必须维持一个链接直到消费者收到响 应。 s o a 的优势 浙江火学硕士学位论文 基于s o a 的事件驱动企业应用集成技术研究 面向服务的体系结构可以基于现有的系统投资来发展,而不需要彻底重新创 建系统。如果组织将开发力量集中在创建服务、利用现有的技术、结合基于组件 的方法来开发软件上,将获得如下几方面好处; 利用现有资产这是首要的需求。通过使用适当的s o a 框架并使 其可用于整个企业,可以将业务服务构造成现有组件的集合。使用这种 新的服务只需要知道它的接口和名称。服务的内部细节以及在组成服务 的组件之间传送的数据的复杂性都对外界隐藏了。这种组件的匿名性使 组织能够利用现有的投资,从而可以通过合并构建在不同的机器上、运 行在不同的操作系统中、用不同的编程语言开发的组件来创建服务。遗 留系统可以通过w e b 服务接口来封装和访问。 商品化基础架构在所有不同的企业应用程序之间,基础架构的开 发和部署将变得更加一致。现有的组件、新开发的组件和从厂商购买的 组件可以合并在一个定义良好的s o a 框架内。这样的组件集合将被作 为服务部署在现有的基础构架中,从而使得可以更多地将基础架构作为 一种商品化元素来加以考虑 减少成本随着业务需求的发展和新的需求的引入,通过采用s o a 框架和服务库,为现有的和新的应用程序增强和创建新的服务的成本大 大地减少了。同样,开发团队的学习难读也降低了,因为他们可能已经 熟悉了现有的组件。 持续改进业务过程s o a 允许清晰地表示流程流,这些流程流通过 在特定业务服务中使用的组件的顺序来标识。这给商业用户提供了监视 业务操作的理想环境。业务建模反映在业务服务中。流程操纵是以一定 的模式重组部件( 构成业务服务的组件) 来实现的。这将进一步允许更 改流程流,而同时监视产生的结果,因此促进了持续改进。 以流程为中心的体系结构现有的体系结构模型和实践往往是以程 序为中心的。应用程序是为了程序员的便利而开发的。通常,流程信息 在组件之间传播。应用程序很像一个黑匣子,没有粒度可用于外部。重 用需要复制代码、合并共享库或继承对象。在以流程为中心的体系结构 中,应用程序是为过程开发的。流程可以分解成一系列的步骤,每一个 步骤表示一个业务服务。实际上,每个过程服务或组件功能都相当于一 个子应用程序。将这些子应用程序链接在一起可以创建能够满足业务需 求的流程流。这种粒度允许利用和重用整个组织中的子应用程序。 浙江大学硕士学位论文 基于s o a 的事件驱动企业应用集成技术研究 2 4 1 4s o a 与w e b 服务的关系 面向服务的体系结构s o a 和w e b 服务的体系结构是两个不同层面的问题, 前者是概念模式,面向商业应用而后者则是实现模式,面向技术框架。面向服务 的体系结构所表示的是一个概念上的模型,在这个模型中,松藕合的应用在网络 上被描述、发布和调用。而w e b 服务则是由一组协议构成的协议栈所定义的框 架结构,它定义了在不同的系统之间通信松耦合的编程框架。可以说,w e b 服务 体系结构实际上是面向服务的体系结构的一个特定的实现;面向服务的体系结构 作为一个概念上的模型,它将网络、传输协议以及安全等具体的细节都遗留给特 定的实现。 2 4 2 事件驱动体系架构( e v e n t d r i v e na r c h i t e c t u r ee d a ) e d a 是种设计和构建应用的方法,其中事件触发消息在独立的、非
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年部队货车考试题及答案
- 乌海市中储粮2025秋招面试专业追问题库战略研究博士岗
- 海南地区中石化2025秋招笔试模拟题含答案油田工程技术岗
- 大唐电力南京市2025秋招面试专业追问及参考计算机与信息岗位
- 国家能源金昌市2025秋招采矿工程类面试追问及参考回答
- 淮安市中石化2025秋招笔试行测50题速记
- 聊城市中石化2025秋招笔试模拟题含答案油田勘探开发岗
- 2025年医院人文考试试题及答案
- 茂名市中石化2025秋招写作申论万能模板直接套用
- 晋中市中储粮2025秋招综合管理岗高频笔试题库含答案
- 初中三年级全学期信息科技《认识物联网》教学课件
- 部编版初中语文《艾青诗选》整本书阅读公开课堂实录
- 2024-2029年中国司美格鲁肽行业市场现状分析及竞争格局与投资发展研究报告
- 奥氮平氟西汀胶囊-药品解读
- 4D厨房区域区间管理责任卡
- 提高住院患者卒中知识知晓率
- 公司组织知识清单范例
- 烘焙类产品的特性及应用
- 第三章转录及转录调控
- GB/T 7193-2008不饱和聚酯树脂试验方法
- GB/T 3810.3-2016陶瓷砖试验方法第3部分:吸水率、显气孔率、表观相对密度和容重的测定
评论
0/150
提交评论