(计算机应用技术专业论文)企业服务总线在银行系统集成方面的研究与应用.pdf_第1页
(计算机应用技术专业论文)企业服务总线在银行系统集成方面的研究与应用.pdf_第2页
(计算机应用技术专业论文)企业服务总线在银行系统集成方面的研究与应用.pdf_第3页
(计算机应用技术专业论文)企业服务总线在银行系统集成方面的研究与应用.pdf_第4页
(计算机应用技术专业论文)企业服务总线在银行系统集成方面的研究与应用.pdf_第5页
已阅读5页,还剩69页未读 继续免费阅读

(计算机应用技术专业论文)企业服务总线在银行系统集成方面的研究与应用.pdf.pdf 免费下载

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

文档简介

华东师范人学硕l 学位论文 摘要 随着信息化的发展,银行内部往往建立了许多功能各异、相对独立应用子系 统,如银行卡系统、网上银行系统等,从而形成了许多信息孤岛,而不断变化的 市场需求往往需要不同业务子系统之间的集成和重组。s o a 作为一种新的软件开 发范型,通过松耦合方式更好的实现软件资产的复用,因而可以很方便地构建应 用系统,以应对不断变化的市场环境和用户需求。 企业服务总线( e s b ) 是当今非常有效的企业应用整合方案。传统的点对点应 用整合方式将最终造成企业i t 架构蛛网化,伴随而来的是复杂僵化的应用架构、 高额的维护成本和缓慢的市场响应速度。企业服务总线作为s o a 架构的信息传输 主干,能够帮助简化i t 架构,降低运作成本,提升业务灵活性和市场响应速度, 最终提升企业的竞争优势。 本文首先系统地研究了s o a 和e s b 理论架构,总结了其相关技术,主要包括: w e b s e r v i c e 、w s d l 、s o a p 、u d d i 等。然后引出了企业服务总线模型,阐述了采 用e s b 技术来构建s o a 的优越性,并对企业服务总线中的内部机制进行了深入的 研究。 论文基于目前商业银行业务整合现状,提出了基于企业服务总线的信息集成 系统的一般设计流程。在此基础上,论文详细设计了一个银行信息集成系统,包 括其e s b 平台子系统的各功能模块设计和服务治理平台子系统的各功能模块设 计。 论文基于i b m 的应用整合中间件m e s s a g eb r o k e r ,实现了基于企业服务总 线的银行信息集成系统的大部分功能。通过对系统的运行结果的比较分析,验证 了论文设计的银行信息集成系统的可行性和实用性。 论文最后总结了基于企业服务总线的信息集成系统的设计方法和实现步骤, 以及迸一步研究和改进的方向。 关键词:面向服务构架;松耦合;企业服务总线;企业应用整合 华东师范大学硕十学位论文 a b s t r a c t w i t ht h ed e v e l o p m e n to fi n f o r m a t i o nt e c h n o l o g y , l o t so fs u b s y s t e m sh a db e e n e s t a b l i s h e di nb a n k ss u c ha sc a r ds y s t e m ,e - b a n ks y s t e ma n ds oo n t h e s es u b s y s t e m s h a v et h e i ro w ns p e c i a lf u n c t i o na n da r ea l w a y si n d e p e n d e n to fe a c ho t h e ,r e s u l t i n gi n m a n y ”i n f o r m a t i o ni s a l a n d ”t h ec h a n g i n gm a r k e tr e q u i r e m e n t sn e e di n t e g r a t i o na n d r e o r g a n i z a t i o no ft h e s ed i f f e r e n ts u b s y s t e m s s o ah a sb e e nw i d e l yp r o p a g a t e da n d r e c e i v e db ym a n yu s e r sa n de n t e r p r i s e s a san e wm o d e lo fs o a r ed e v e l o p m e n t , s o ar e a l i z e dt h er e u s eo fs o t t w a r ea s s e t sb yu s i n gl o o s e - c o u p l i n ga p p r o a c h b yu s i n g s o a ,a p p l i c a t i o ns y s t e m sc a nb ec o n s t r u c t e dr a p i d l yt or e s p o n dt ot h ec o n s t a n t l y c h a n g i n gm a r k e tc o n d i t i o n sa n du s e rr e q u i r e m e n t s c u r r e n t l y , e s bi sa ne f f e c t i v es o l u t i o no ne 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 ) t h et r a d i t i o n a lp o i n tt op o i n ta p p l i c a t i o ni n t e g r a t i o na p p r o a c hw i l lr e s u l ti n v e r yc o m p l i c a t e de n t e r p r i s ei ti n f r a s t r u c t u r e ,a l o n gw i t hh i g hm a i n t e n a n c ec o s t sa n d s l o wm a r k e tr e s p o n s es p e e d a st h ei n f o r m a t i o nt r a n s m i s s i o nb a c k b o n eo fs o a ,e s b c a nh e l pe n t e r p r i s e ss i m p l i f yi ti n f r a s t r u c t u r e ,r e d u c eo p e r a t i o n a lc o s t sa n de n h a n c e b u s i n e s sa g i l i t ya n dm a r k e tr e s p o n s i v e n e s s ,u l t i m a t e l ye n h a n c et h e i rc o m p e t i t i v e a b i l i t y f i r s t l y , t h et h e s i s d i s c u s s e st h et h e o r e t i c a lf r a m e w o r ko fs o aa n de s b , s u m m a r i z e si t sr e l a t e dt e c h n o l o g i e s ,m a i n l yi n c l u d i n g :w e b s e r v i c e ,w s d l ,s o a p , u d d ia n ds oo n a n dt h e nl e a d st ot h ee n t e r p r i s es e r v i c eb u sm o d e l ,d e s c r i b e st h e s u p e r i o r i t yo fs o a c o n s t r u c t i o nb yu s i n ge s bt e c h n o l o g y t h ei n t e r n a lm e c h a n i s mo f e s bi sr e s e a r c h e dt h o r o u g h l y 。 b a s e do nt h ec u r r e n tb u s i n e s sb a n ka p p l i c a t i o ni n t e g r a t i o ns t a t u s ,t h et h e s i s p r o p o s e dt h ed e s i g nf l o wo fa p p l i c a t i o ni n t e g r a t i o ns y s t e mw h i c hb a s e d o ne s b a n d t h e nt h et h e s i sd e s i g n e dab a n ka p p l i c a t i o ni n t e g r a t i o ns y s t e mi nd e t a i l ,i n c l u d i n gt h e f u n c t i o nm o d u l e sd e s i g no fe s bs u b s y s t e ma n ds e r v i c em a n a g e m e n ts u b s y s t e m b a s e do nw e b s p h e r em e s s a g eb r o k e rw h i c hi st h ea p p l i c a t i o ni n t e g r a t i o n m i d d l e w a r ep o w e r e db yi b m ,t h et h e s i s i m p l e m e n t e dm o s tf u n c t i o nm o d u l e s c o n t a i n e di nt h es y s t e mw h i c hp r o p o s e da h e a d t h r o u g hac o m p a r a t i v ea n a l y s i so ft h e s y s t e mo p e r a t i o nr e s u l t s ,t h ef e a s i b i l i t ya n dp r a c t i c a l i t yo f t h eb a n ki n t e g r a t i o ns y s t e m d e s i g n e di nt h et h e s i si sw e l lv e r i f i e d f i n a l l y , t h et h e s i ss u m m a r i z e st h ed e s i g na p p r o a c h e sa n dt h ei m p l e m e n ts t e p sf o r t h ee s b - b a s e da p p l i c a t i o ni n t e g r a t i o n ,a sw e l la st h ed i r e c t i o nf o rf u r t h e rr e s e a r c ha n d i m p r o v e m e n t k e yw o r d s :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 ;l o o s i n g - c o u p l i n g ;e n t e r p r i s es e r v i c e b u s ;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 i i 学位论文独创性声明 本人所呈交的学位论文是我在导师的指导下进行的研究工作及取得的研究成 果据我所知,除文中已经注明引用的内容外,本论文不包含其他个人已经发表或撰 写过的研究成果对本文的研究做出重要贡献的个人和集体,均已在文中作了明确说 明并表示谢意 作者签名: 、日期: 学位论文授权使用声明 弓心 本人完全了解华东师范大学有关保留、使用学位论文的规定,学 校有权保留学位论文并向国家主管部门或其指定机构送交论文的电 子版和纸质版。有权将学位论文用于非赢利目的的少量复制并允许论 文进入学校图书馆被查阅。有权将学位论文的内容编入有关数据库进 行检索。有权将学位论文的标题和摘要汇编出版。保密的学位论文在 解密后适用本规定。 学位论文作者签名 日期: 导师签名: 会钿飞 日期:之:! 丛堕 华东师范大学硕上学位论文 第一章绪论 1 1 研究背景 随着计算机科技的发展和应用,日常事务正越来越多地依赖于各种各样的r r 系统,这些系统本身往往有明确的功能定位,在设计和规划上也很有针对性。然 而,当需要将这些系统整合起来,提供更高层次的综合功能的时,会发现事实上 并不简单。 在企业中,不同的部门在不同时期可能采用完全不同的技术建设所需的i t 系统,这意味着特定的1 1 r 系统是为完成特定部门的业务工作而设计的,是为该 部i - j n 务的,比如常见的生产系统、财务系统、销售系统等。然而,这些系统的 互联往往是建设时最容易被忽视的地方,一旦提出需要跨部门、跨业务功能的需 求时,就会体会到这种系统互连的重要性。 为了提供跨部门、跨业务功能的服务,人们考虑将应用系统相互连接起来, 实现业务整合。对于两个应用系统互联,目前比较常用的做法是利用消息机制实 现应用系统之间的松耦合的协作关系。应用系统可以接收消息以实现服务调用, 也可以发送消息以调用其他应用系统服务。 应用系统互联的思想很简单,然而实施却存在很多困难。不同应用系统所在 的操作系统之间可能存在差别,从而带来双方对数据表示上的差异。如整形数据 的字长和高低字节在不同系统中可能不同。另外,字符编码也可能不一样,就单 字节而言,有的是a c c i i 码,有的是e b c d i c 码,如果是多字节,情况则更加 复杂,不同的字符集之间有些事可以互相转换的,有些则不行,由于网络传输的 是比特流,所以在传输方的数据到了接收方就可能无法读懂。另外,应用系统各 自的开发语言可能不同,编程人员熟悉的开发工具也可能不同,各种系统的约定 和规则以及五花j k f 的接口都可能成为实现应用系统互联的障碍。 鉴于以上情况,目前越来越多的应用互联方案采用专业的消息中间件的来屏 蔽平台间的差异,这些中间件往往支持多种平台、多种编程语言以及常见的通信 协议,有很强的适应和扩展能力。然而,通信互联至少需要三个要素:通信协议、 会话规则、格式约定,消息中间件往往能解决前面两个问题,格式约定是属于应 用层面的,不同的应用系统原本能够识别的消息格式可能不尽相同,为了能形成 互联,还需要协商一个双方都能理解的消息格式。 当互联的应用系统有多个时,两两互联势必形成网络拓扑结构。随着应用系 华东师范大学硕士学位论文 统的增多,网状结构会变得越来越复杂并难以维护。于是,人们想到将网状结构 改成星型结构,由于星型结构的中心节点控制着全部数据的传递,可以集中进行 消息格式转换,将来自源系统的消息格式主动转换成目标系统能够识别的格式。 企业服务总线( e n t e r p r i s es e r v i c eb u s ,e s b ) 是采用总线结构将应用系统 互联在一起,各应用系统以服务的方式连接到总线上。企业服务总线支持各种各 样的接入方式,能够定义和识别各种复杂的格式约定,并实现不同格式之间的映 射和转换,还可以在总线上编程实现一定的业务逻辑。 当企业的应用系统以服务方式接入企业服务总线时,企业的i t 构架就成为 面向服务的构架,基于企业服务总线的s o a 架构平台,可以灵活地实现企业各种 流程的设计、编排和实现,从而满足企业业务流程不断改进的需求,以适应市场 的变化。本文选题于此,具有一定的理论意义和重要的实践价值。 1 2 国内外研究现状 在二十世纪六十年代到七十年代期间,企业应用大多是用来替代重复性劳动 的一些简单设计,没有考虑到企业应用集成的问题。到了八十年代,一些企业开 始意识到应用集成的价值,技术人员都试图在企业系统整体概念的指导下对己经 存在的应用进行重新设计让它们集成在一起,然而这种努力收效甚微。 据g a r t n e r 统计,i t 系统的整合是一个全球性问题,大型企业每年i t 预算 的4 0 投给了整合和集成平台,超过9 0 的c i o 认为它是非常重要的问题“。另 一方面,i d c 调查报告指出:“应用整合市场全球营业收入已经从2 0 0 0 年的5 0 亿美元上升到2 0 0 6 年的2 4 0 亿美元,这意味着综合年增长率超过了3 0 。与此 相对应,整个i t 服务产业的同期综合年增长率预计只有1 1 。”由此可见,应 用整合仍是最近几年内i t 行业中增长最快的部分之一。 如何集成来自不同部门和机构的跨平台的服务和应用系统,以满足业务上灵 活多变的要求,是当今i t 所面临的主要挑战之一。面向服务的体系结构s o a 及 企业服务总线e s b 为解决这一问题提供了良好的途径。 2 0 0 3 年开始,国内外知名软件提供商提供了丰富的软件包和相应解决方案, 其中在s o a 架构下基于m q ( m e s s a g eq u e u e ) 的企业服务总线是较为成熟的产品。 从s o a 及e s b 应用案例上看,在国外,美国大通银行、意大利米兰大众银行 等都有成功的应用。在国内,人民银行t i p s 系统、中国移动等都已开始了基于 e s b 技术的应用,并已取得了初步的成效,技术应用日益成熟。 2 华东师范大学硕 :学位论文 e s b 应用领域目前主要集中在金融、电信、电力、政府部门。据w i n t e r g r e e n 预计,全球e s b 市场将从2 0 0 7 年的2 0 3 8 亿美元增长到2 0 1 3 年的将近5 0 0 亿美 元。虽然e s b 具有诸多优势,但由于启动的投入大、客户的认同理念和e s b 产品 厂商的营销策略等因素,使得e s b 的广泛应用尚需时同。 1 3 论文研究的主要内容 论文深入研究了s o a 和e s b 理论架构,参阅许多著作和文献,结合本文作者 实践,设计了一个基于企业服务总线的银行信息集成系统,并基于i b m 的应用整 合中间件m e s s a g eb r o k e r 实现了该系统。 本文的主要研究内容如下: ( 1 ) 系统地研究了s o a 和e s b 理论架构,总结了其相关技术如:w e b s e r v i c e 、 x m l 、s o a p 、u d d i 等技术。 ( 2 ) 提出了基于企业服务总线的信息集成系统的一般设计流程,并基于此流 程,详细设计了一个银行信息集成系统。 ( 3 ) 基于i b m 的应用整合中间件m e s s a g eb r o k e r ,实现了基于企业服务总线 的银行应用集成系统的大部分功能。 ( 4 ) 总结了本文主要工作以及提出了进一步研究和改进的方向。 1 4 论文的组织结构 本文研究内容围绕企业服务总线在银行系统集成方面的应用展开。论文的内 容结构安排如下: 第一章绪论。主要阐述了论文的研究背景、目标、意义和国内外研究现状 等,并介绍了本论文的主要工作和组织结构。 第二章面向服务的体系构架的研究。主要研究了s o a 的产生、概念、特点 以及支撑s o a 的相关技术。在本章中,讲述了s o a 架构的产生和发展,指出构建 系统的体系结构应具有松散耦合、位置透明、协议独立的特征;讨论了支撑s o a 的相关技术w e b s e r v i c e 、x m l 、u d d i 、s o a p 和w s d l 。 第三章基于消息的企业服务总线的研究。详细研究了e s b 相关理论,指出 e s b 作为s o a 提供了一种连通性的基础架构,用以连接s o a 中的服务。接着讨论 了e s b 功能、优点、及三种设计模式。 第四章银行e s b 系统的设计。在前两章理论基础的支撑下,主要研究了目 3 华东师范大学硕士学位论文 前银行业务集成存在的问题,给出了解决方案即是建立基于e s b 消息机制以服务 为导向的s o a 系统。在此基础上设计了几个通用模块组成e s b 平台子系统,考虑 到银行业务集成的进一步发展需要,文章还设计了用于存储管理服务信息的治理 平台子系统。 第五章银行e s b 系统的实现。本章在第四章基础上利用e c l i p s e 和i b m 的 e s b 开发工具w m b t 以及目前最常用最稳定的消息中间件m q 开发了治理平台子系 统和一个e s b 子系统,该e s b 子系统包括三条消息流,实现了第四章设计的部分 模块功能。此外,还把银行的卡业务系统模拟封装成一个服务用以与e s b 系统通 信。 第六章总结与展望。总结了论文的研究工作,指出了进一步的工作以及基 于s o a 架构的企业应用的发展方向。 4 华东师范大学硕士学位论文 第二章面向服务的体系构架的研究 2 1 服务概述 i b m 工程师是这样定义服务的:“服务是执行可重复任务的可发现资源,由 外部化的服务规范进行描述。”_ 。 w 3 c 将服务定义为:“服务提供者完成一组工作,为服务使用者交付所需的 最终结果,最终结果通常会使使用者的状态发生变化,或者双方都发生变化。 通俗地讲,服务是一组基于某种约定,含有一定功能,由特定服务提供者提 供给消费者使用的组件。服务是一项可在网络上找到的独立的功能,它描述了它 能够进行的操作和互动方式。从业务的观点来看,服务执行了特殊的任务。同样, 它也能够映射到业务流程中,就像输入“客户标识符一样简单。另一方面,各 项服务也可以聚合到一个提供了更高等级服务的复合应用程序中,就如“填写客 户订单”一样复杂,它是一种端到端的跨越多个业务应用程序的流程。 尽管各个机构或企业对服务定义有所不同,但是差别并不大,总的来说,服 务具有以下特点”4 : ( 1 ) 服务是可复用的。服务鼓励所有服务的可复用性,不管目前是否有直接 复用的需求,服务都应该设计为具有潜在的可复用性,以适应未来需求。服务是 相关操作的简单集合,因此各个操作所封装逻辑必须是可复用的,以实现可复用 的服务。 ( 2 ) 服务共享一个正式契约。服务契约的定义如下: 1 ) 服务端点 2 ) 每个服务操作 3 ) 由每个操作所支持的所有输入与输出消息 4 ) 服务及其操作的规则与特征 ( 3 ) 服务是松散耦合的。服务之间要求最小的依赖性。 ( 4 ) 服务是底层逻辑的抽象。服务抽象底层逻辑也称作服务接口层次抽象。 该原则允许将服务当作黑盒,对外部隐藏细节。 ( 5 ) 服务是可组合的。服务可以代表任何范围的处理逻辑,可以包含若干个 操作,也可以包含其他服务。因此,服务应该被设计为在任何时候都可以用作其 他服务组合的有效成员。 ( 6 ) 服务是自治的,具有明确的边界。逻辑由服务所控制,并处于一个清晰 5 华东师范大学硕士学位论文 的边界内。服务对所有的处理进行自我管理,减少对其他服务的依赖。当确定应 用逻辑如何分割成服务、什么操作应该组合成一个服务时,服务自治性是一个考 虑条件。 ( 7 ) 服务是无状态的。服务应尽量少的保留管理的状态信息量以及保持的持 续时间。无状态是推动可复用性、可扩展性以及松散耦合的首要条件。 ( 8 ) 服务是可发现的。服务提供者需将已有的服务在服务中心注册,服务使 用者就可以在服务中心查找到所需服务。 2 2 面向服务的构架( s o a ) 简介 2 2 1s o a 的基本概念 1 9 9 6 年,g a r t n e r 最早提出s o a 的思想:“面向服务的架构是一种客户机 服务器软件设计方法,其中应用由软件服务和软件服务使用者组成( 也称为客户 机或服务请求者) ”。g a r t n e r 为s o a 描述的远景目标是:在于让i t 变得更有 弹性,以更快地响应业务单位的需求。 i b m 将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 o a ) 是一个组件模型,它将应用程序的不同功能单元( 称为服务) 通过定义好的接 口和契约联系起来。接口采用中立的方式进行定义,它独立于实现服务的硬件平 台、操作系统和编程语言。这使得构建在这样的系统中的服务可以一种统一和通 用的方式进行交互。 s o a 是一种组织现有i t 资产的设计方法,通过s o a 复杂的分布式系统和应 用程序就可以转换为集成的、简化的、高度灵活的资源网络。实施完善的s o a 项目可以将i t 资源更直接地对准业务目标,这能够起到以下作用:帮助组织机 构创建更强大的客户和供应商连接;提供更准确、更容易使用的商业智能,以便 做出更好的决策;有助于实现业务流程和信息共享的流线化,从而提高生产力, 提高组织机构的灵活性。 面向服务方法允许创建服务和复合应用程序,它们的存在独立于底层技术。 通过网络,服务模型促进了i t 资源的访问和消耗,而不是要求所有的数据和逻 辑都存在于单独的计算机上。服务的设计是为了实现独立、自控和松散的连接, 因此,根据企业不断变化的需求,它们可以很容易地合并或重新合并到复合应用 程序中。复合应用程序对于业务具有以下作用:改善手动作业,并实现手动作业 的自动化;使客户和贸易伙伴达成观点的一致;编制符合内部指令和外部规定的 6 华东师范大学硕一l - 学位论文 业务流程。最终,在业务需求变化时,采用了面向服务方法的组织机构可以创建 并重新使用应用程序,从而能够获得优秀市场业绩所需的灵活性。 图2 - 1 是现代s o a 基础参考模型图,从中我们可以看出s o p , 把各种各样的应 用包装成服务集成到一起,各种服务通过一条总线进行通信。 图2 - 1s o af o u n d a t i o n 参考模型8 1 2 2 2s o a 体系结构 s o a 是设计和构建松耦合的软件解决方案的方法,这个解决方案能够以程序 化的可访问的软件服务的形式公开业务功能,使其他应用程序可通过己发布的和 可发现的接口来使用这些服务,s o a 描述了三种角色,分别承担了不同的任务, 这三种角色又包括三个操作。 面向服务的体系结构有如下三个角色”。: ( 1 ) 服务请求者。服务请求者可以是应用程序,也可以软件模块或需要一个 服务的另一个服务。它对服务代理中心的服务进行查询,通过传输绑定服务,并 且执行服务功能。 ( 2 ) 服务提供者。服务提供者是一个可通过网络寻址的实体。它将自己的服 务和接口契约发布到服务代理,以便服务请求者可以发现和使用该服务。 ( 3 ) 服务代理。服务代理是服务发现的支持者,它包含一个服务存储库,允 许服务使用者查找服务提供者接口。同时服务提供者可以把它们所要提供的服务 7 华东师范大学硕士学位论文 在这里进行注册。对于服务请求者而言,绑定服务信息的方式有两种:静态绑定 和动态绑定。静态绑定是在开发应用程序的时候查询相关的服务信息,并得到服 务的接口信息。动态绑定是指服务请求者在运行过程中从服务代理处获得服务信 息并动态调用相关功能的过程。 面向服务的体系结构中的每个实体都扮演着服务提供者、使用者和注册中心 这三种角色中的某一个角色或多个角色。 对应于s o a 中的三个角色,s o a 也包括三种主要的操作: ( 1 ) 发布:为了使服务可访问,需要发布服务描述使得服务请求者可以查找 到它。发布服务描述的位置可以根据应用程序的要求而变化。 ( 2 ) 发现:在发现操作中,服务请求者直接查询服务描述或在服务代理中心 中查询所要求的服务类型。对于服务请求者,可能会在两个不同的生命周期阶段 涉及到查找操作:在设计时为了程序开发而检索服务的接口描述,而在运行时为 了调用而检索服务的绑定和位置描述。 ( 3 ) 绑定和调用:在绑定操作中,服务请求方通过分析从代理服务器中得到 的服务信息,包括服务的访问路径、调用参数、返回结果传输协议、安全要求等, 对自己的系统进行相应配置,进而远程调用服务提供者所提供的服务。 在面向服务的体系结构中,对服务有如下要求: ( 1 ) 所有功能都定义为服务。包括业务功能、由底层功能组成的业务事务和 系统服务功能。 ( 2 ) 所有的服务各自都是独立的。它们就像“黑匣子 一样运行,外部组件 不知道它们是如何执行的,而仅仅关心它们是否返回期望的结果。也就是说,在 体系结构的层面上,它们究竟是本地的( 在本系统内) 还是远程的( 在系统外) 、是 用什么互连协议来调用或需要什么样的基础架构组件来连接,都无关紧要。服务 可能是在相同的应用程序中,也可能是在公司内部网内完全不同的系统上的不对 称多处理器的不同地址空间中,还有可能是在用于b 2 b 配置的合作伙伴的系统上 的应用程序中。 通过上述论述,可以得出典型的s o a 架构需满足如下三个基本要求“: ( 1 ) s o a 在相对较粗的粒度上对应用服务或业务模块进行封装与重用。 ( 2 ) 服务间保持松散祸合,基于开放的标准,服务的接口描述与具体实现无 关。 ( 3 ) 灵活的架构服务的实现细节,服务的位置以及服务请求的底层协议都应 华东师范大学硕士学位论文 该透明。 2 2 3s o a 的特点 基于s o a 来构建的i t 系统具备如下特点: ( 1 ) 以业务为中心。s o a 更多关注于用户业务,通过业务人员参与s o a 系统 的规划、设计和管理,使得i t 系统能在对业务的深刻理解的基础上进行构建, 实现i t 系统与用户业务的密切结合。在具体实施过程中,通过把完成实际业务 流程中的一项任务所需的i t 资源封装为服务,达到以业务为核心,通过业务选 择技术,避免技术制约业务的问题。 ( 2 ) 灵活适应变化。i t 系统围绕用户业务构建,用户业务在实现层通过表现 为一系列松散耦合的“服务”来实现,松散耦合旨在将服务使用者和服务提供者 在服务实现和客户如何使用服务之间隔离开来。服务提供者和服务使用者之间松 散耦合的关键点是必须提供统一的服务接口。即服务请求者和服务提供者之间只 有接口上的往来,至于服务内部实现都与服务请求者无关。而且这些服务可以根 据用户需求随需组合,从而使得i t 系统对于业务的适应能力明显提高。 ( 3 ) 重用i t 资源,提升开发效率。s o a 强调对“服务 的重用,对原有i t 资源的重用度提升是s o a 带来的关键效果之一,大量具有高重用的服务资源,为 快速构建新的业务功能和业务系统奠定基础,使i t 系统的开发和软件生产效率 得到提升。同时,重用过程有利于保护用户前期的信息化投资和i t 资产积累, 节省i t 系统开发成本,实现用户信息化的可持续性建设与发展。 ( 4 ) 更强调标准。s o a 的实现强调基于统一的标准,s o a 系统建立在大量的开 放标准和协议之上,以实现系统及信息的互联互通和互操作。s o a 通过对服务接 口的标准化描述,使服务可以提供给在任何异构平台和任何用户接口使用。这一 描述包括了与服务交互需要的全部细节,包括消息格式、传输协议等。服务接口 隐藏了服务实现的细节,允许独立于实现服务所基于的软硬件平台以及编写服务 所使用的编程语言而使用服务。 因此s o a 主要有以下几个优点: ( 1 ) 利用现有的资产。将现有的资产包装成服务,企业可以继续从现有的资 源中获取价值,而不必重新从头开始构建。 ( 2 ) 更易于集成和管理复杂性。将基础设施和实现发生的改变所带来的影响 降到最低限度。因为复杂性是隔离的,当更多的企业一起协作提供价值链时,会 9 华东师范 学磺学位论文 变得更加重要。 建模 s o a 项目的第一步几乎和技术没有任何关系,所有事项都与业务相关。面向 服务的方法将业务所执行的活动视为服务,因此第一步是要确定这些业务活动或 流程是什么。对业务体系结构进行记录,这些记录不仅可以用于规划s o a ,还可 以用于对实际业务流程进行优化。通过在编写代码前模拟或建模业务流程,可以 更深入地了解这些流程,从而有利于构建帮助执行这些流程的软件。 建模业务流程的程度依赖于预期实现的深度。另外,这个程度还依赖于在开 发团队中担任的角色。如果是企业架构师,将会对实际的业务服务进行建模。如 果是软件开发人员,将可能对单个服务进行建模。 组装 对业务流程进行建模和优化后,开发人员可以开始构建新的服务或重用现有 的服务,然后对其进行组装以形成组合应用程序,从而实现这些流程。在“建模” 步骤中,已经确定了需要何种类型的服务以及它们将访问何种类型的数据,本步 骤将要找到已经存在的功能,并为其添j n 月p 务支持。另外,还涉及n g , j 建提供功 能和访问数据源所需的新服务,以便满足s o a 涉及的业务流程范围内的需求。 部署 进行建模和组装后,要将组成s o a 的资产部署到安全的集成环境中。此环境 本身提供专门化的服务,用于集成业务中涉及的人员、流程和信息。这种级别的 集成可帮助确保将企业的所有主要元素连接到一起协同工作。此外,部署工作还 需要满足业务的性能和可用性需求,并提供足够的灵活性,以便吸纳新服务,而 不会对整个系统造成大的影响。 管理 系统部署后,需要从i t 和业务两个角度对系统进行管理和监视。在此步骤 中收集的信息用于帮助实时地了解业务流程,从而能更好地进行业务决策,并将 信息反馈回生命周期,以进行持续的流程改进工作。在这一阶段需要处理服务质 量、安全、一般系统管理之类的问题。 在本步骤中,将监视和优化系统,发现和纠正效率低下的情况和存在的问题。 由于s o a 是一个迭代过程,因此,在此步骤中,不仅要找出技术体系结构中有待 改进之处,还要找出业务体系结构中有待改进之处。 完成此步骤后就又开始新的“建模 步骤,在“管理”步骤中收集的数据将 用于重复整个s o a 生命周期,再次进行整个过程。 华东师范火学硕上学位论文 2 3s o t 相关技术总结 面向服务的体系结构是传统的面向对象的模型的替代模型,虽然基于s o a 的系统不排除使用面向对象的设计来构建单个服务,但是其整体设计却是面向服 务的。s o a 系统原型的一个典型例子是c o r b a ,它已经出现很长时间,其定义的 概念与s o a 相似。然而,现在的s o a 已经有所不同,因为它依赖于一些更新的进 展,这些进展是以可扩展标记语言x m l 为基础的。通过使用基于x m l 的语言来描 述接口,服务已经转到更动态且更灵活的接口系统中,非以前c o r b a 中的 i d l ( i n t e r f a c ed e f i n i t i o nl a n g u a g e ) 可比的。 w e b 服务( w e b s e r v i c e ) 实现s o a 的主导方式。但是并不是说w e b s e r v i c e 是s o a 唯一实现方式。前面说到的c o r b a 也可以,但是相比d c o m 和c o r b a , w e b s e r v i c e 最大的好处就是它的兼容性,d c o m 只是m i c r o s o f t 一个厂商的架构, 而c o r b a 在不同厂商的不同实现间兼容性很不好。w e b s e r v i c e 是一个统一的标 准,不同厂商的实现可以很好的协同工作。 w s d l ,u d d i 和s o a p 是s o a 基础的基础部件。w s d l 用来描述服务;u d d i 用 来注册和查找服务;而s o a p ,作为传输层,用来在服务消费者和服务提供者之 间传送消息。s o a p 是w e b 服务的默认机制,其他的技术可以为服务实现其他类 型的绑定。一个消费者可以在u d d i 注册表查找服务,取得服务的w s d l 描述,然 后通过s o a p 来调用服务。 下面分别介绍以上提到的技术:) ( m l 、w e b s e r v i c e 、w s d l 、s o a p 和u d d i 。 2 3 1 捌l ( e x t e n s i b l em a r k u pl a n g u a g e ) 一 x m l 与h t m l 一样,都是s g m l ( s t a n d a r dg e n e r a liz e dm a r k u pl a n g u a g e ,标 准通用标记语言) 。x m l 与h t m l 的设计区别是:x m l 用来存储数据,重在数据本 身。而h t m l 用来定义数据,重在数据的显示模式。x m l 是i n t e r n e t 环境中跨平 台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。它是一种简 单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用非常方 便的方式建立。虽然x m l 需要更多的空间,但它非常简单且易于掌握和使用。 x m l 的简单使其易于在任何应用程序中读写数据,这使x m l 很快成为数据交 换的唯一公共语言,虽然不同的应用软件也支持其它的数据交换格式,但不久之 后都将支持x m l ,那就意味着程序可以更容易的与w i n d o w s 、m a c o s ,l i n u x 等等 各种平台下产生的信息结合,然后可以很容易加载x m l 数据到程序中并进行分 1 2 华东师范大学硕上学位论文 析,然后以x m l 格式输出结果。 0 0 0 0 一 r , j 图2 3x m l 文档实例 2 3 2w e b 服务( w e b s e r v ic e ) 1 司 w 3 c 给出的w e b 服务的定义是:w e b 服务是由资源标志符( u n i v e r s a l r e s o u r c ei d e n t i f i e r ,u r i ) 确定的一个软件应用,它的接口和封装是可以被x m l 定义描述和发现的,并且支持使用x m l 消息、通过网络协议与其他软件应用进行 直接交互“。 从上定义可以看出w e b 服务有两层含义:第一是指封装成单个实体并发布到 网络上的功能集合体;第二是指功能集合体被调用后所提供的服务。w e b s e r v i c e 是为其它应用提供数据和服务的应用逻辑单元,应用程序通过标准的w e b 协议和 数据格式获得w e b s e r v i c e ,如h t t p 、x m l 和s o a p 等,每个w e b s e r v i c e 的实现 是完全独立的。 简单地讲,w e b 服务是一个u r l 资源,客户端可以通过编程方式请求得到它 的服务,而不需要知道所请求的服务是怎样实现的,这一点与传统的分布式组件 对象模型不同。 w e b 服务的体系结构是基于w e b 服务提供者、w e b 服务请求者、w e b 服务中 介者三个角色和发布、发现、绑定三个动作构建的。简单地说,w e b 服务提供者 就是w e b 服务的拥有者,它等待为其他服务和用户提供自己已有的功能;w e b 服 务请求者就是w e b 服务功能的使用者,它利用s o a p 消息向w e b 服务提供者发送 1 3 华东师范大学硕十学位论文 请求以获得服务;w e b 服务中介者的作用是把一个w e b 服务请求者与合适的w e b 服务提供者联系在一起,它充当管理者的角色,一般是u d d i 。这三个角色是根 据逻辑关系划分的,在实际应用中,角色之间很可能有交叉:一个w e b 服务既可 以是w e b 服务提供者,也可以是w e b 服务请求者,或者二者兼而有之。图2 - 4 描述了w e b 服务角色之间的关系:其中,“发布 是为了让用户或其他服务知道 某个w e b 服务的存在和相关信息;“查找( 发现) 是为了找到合适的w e b 服务; “绑定 则是在提供者与请求者之间建立某种联系。 图2 - 4w e b 服务结构体系图 2 3 3w e b 服务描述语言( w s d l ) w 3 c 是这样来定义w s d l 的。: w s d l 指网络服务描述语言 w s d l 使用x m l 编写 w s d l 是一种x m l 文档 w s d l 用于描述网络服务 w s d l 也可用于定位网络服务 w s d l 是一个用来描述w e b 服务和说明如何与w e b 服务通信的x m l 语言。用 于描述w e b s e r v i c e 及其函数、参数和返回值,因为是基于x m l 的,所以w s d l 既是机器可阅读的,又是人可阅读的,这是一个很大的优点。一些最新的开发工 具既能根据w e b s e r v i c e 生成w s d l 文档,又能导入w s d l 文档,生成相应 w e b s e r v i c e 的代码。 w s d l 文档结构如下: 1 4 华东师范大学硕士学位论文 元素定义 w e b s e r v i c e 执行的操作 w e b s e r v i c e 使用的消息 w e b s e r v i c e 使用的数据类型 一 w e b s e r v i c e 使用的通信协议 w s d l 的一个简单实例: 2 3 4 简单对象访问协议( s i m p l eo b j e c ta c c e s sp r o t o c o l , s o a p ) 对s o a p 的定义,w 3 c 叙述如下n 8 1 : s o a p 指简易对象访问协议 s o a p 是一种通信协议 s o a p 用于应用程序之间的通信 s o a p 是一种用于发送消息的格式 s o a p 被设计用来通过因特网进行通信 s o a p 独立于平台 s o a p 独立于语言 1 5 华东师范人学硕一l :学位论文 s o a p 基于x m l s o a p 很简单并可扩展 s o a p 允许您绕过防火墙 s o a p 是一种轻量的、简单的、基于x m l 的协议,它被设计成在w e b 上交换 结构化的和固化的信息。s o a p 可以和现存的许多因特网协议和格式结合使用, 包括超文本传输协议( h t t p ) ,简单邮件传输协议( s m t p ) ,多用途网际邮件扩充协 议( m i m e ) 。它还支持从消息系统到远程过程调用( r p c )

温馨提示

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

评论

0/150

提交评论