(计算机软件与理论专业论文)基于soa的交通信息服务平台的研究.pdf_第1页
(计算机软件与理论专业论文)基于soa的交通信息服务平台的研究.pdf_第2页
(计算机软件与理论专业论文)基于soa的交通信息服务平台的研究.pdf_第3页
(计算机软件与理论专业论文)基于soa的交通信息服务平台的研究.pdf_第4页
(计算机软件与理论专业论文)基于soa的交通信息服务平台的研究.pdf_第5页
已阅读5页,还剩60页未读 继续免费阅读

(计算机软件与理论专业论文)基于soa的交通信息服务平台的研究.pdf.pdf 免费下载

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

文档简介

基于s o a 的交通信息服务平台的研究 学科:计算机软件与理论 研究生签字:l 习娲 指导教师签字: 摘要 irll l1 , 1 11 i i ii i i f y 17 5 0 0 0 7 交通运输业是国民经济和社会发展的基础性产业,它的跨越式发展使得信息化成为必 然选择。为此各级政府和相关部门建立了各种各样的交通信息管理系统,但由此也产生了 一系列严重问题,如各种不同机构、不同地域的交通信息交流不畅、无法信息共享、管理 功能重叠、数据格式不一等等。如何把现存的种类繁多的分散于各地的交通信息整合在一 起,构建一个全面的交通信息平台成为目前亟待解决的课题。 本文从系统的观点出发,综合考虑了各种交通信息需求,在最大限度的利用现有多种 交通信息管理系统的基础上,研究了基于s o a 的交通信息服务平台。论文首先分析了与 s o a 相关的理论体系,提出了一种针对交通信息服务平台的s o a 架构,该架构以j 2 e e 体系结构为切入点,利用w e bs e r v i c e 技术实现,具有s o a 的松散耦合与服务透明等特 点。接着,针对可以继续使用的遗留系统,研究了一种封装技术,可以将原有的系统封装 为w e bs e r v i c e 加以利用,避免了不必要的浪费。在交通信息服务平台的实施过程中,通 过需求分析、服务设计、服务的实现,在服务总线上的部署和使用,以及系统功能和性能 的验证,实现了服务透明化,服务的松散耦合,服务的集中管理,充分体现了s o a 架构 的优越性以及构建企业级应用的灵活性和快捷性。 此研究是以提供完善优质的交通信息服务为目的,融合了多种交通信息源,建立了一 体化的交通信息服务平台,为智能交通系统提供了基础数据,既解决了现存交通信息孤岛 问题,又节约了既有投资,还增加了路网通行能力;使多种交通方式能够高效衔接和协调 运行,便于对公民出行进行诱导,最终实现服务水平和经济效益的双重提升。 关键词:s o a ;w e b 服务;e s b ;j n i 。 r e s e a r c ho nt r a f f l i ci n f o r m a t i o ns e r v i c e sp l a t f o r m b a s e do ns o a d i s c i p l i n e :c o m p u t e rs o f t w a r e & t h e o r y s t u d e n ts i g n a t u r e :以,ij - 口,7 s u p e r v i s o rs i g n a t u r e :又) ( i a o a b s t r a c t i nt h en a t i o n a le c o n o m ya n ds o c i a ld e v e l o p m e n t ,t r a n s p o r t a t i o ni sab a s i ci n d u s t r y i t s r a p i d d e v e l o p m e n tm a k e st r a n s p o r t a t i o ni n f o n n a t i o n i z a t i o nh a sb e c o m ea ni n e v i t a b l ec h o i c e i nt h i sc a s e ,m a n yr e l e v a n td e p a r t m e n t se s t a b l i s hm a n yt r a f f i ci n f o r m a t i o nm a n a g e m e n t s y s t e m s ,a tt h es a m et i m e ,i tg e n e r a t e sas e r i e so fs e r i o u sp r o b l e m s ,s u c ha sav a r i e t yo f d i f f e r e n to r g a n i z a t i o n s ,d i f f e r e n tr e g i o n sc a nn o te x c h a n g et r a f f i ci n f o r m a t i o n ,c a nn o tb e i n f o r m a t i o ns h a r i n g ,t h em a n a g e m e n tf u n c t i o nt oo v e r l a pa n dt h ed a t af o r m a tt ov a r ya n ds oo n h o wt oe x i s t i n gs c a t t e r e da c r o s saw i d ev a r i e t yo ft r a f f i ci n f o r m a t i o nt o g e t h e rt ob u i l da c o m p r e h e n s i v et r a n s p o r ti n f o r m a t i o np l a t f o r mb e c o m et h eu r g e n tn e e d t or e s o l v ei s s u e s t h i sp a p e rf r o mt h ev i e w p o i n to fs y s t e m ,c o n s i d e r i n gt h ev a r i o u st r a f f i ci n f o r m a t i o n n e e d s ,i nt h eu s eo ft h ee x i s t i n gm a n yt r a f f i ci n f o r m a t i o nm a n a g e m e n ts y s t e m sb a s e do nt h e s t u d ys o a - b a s e dt r a f f i c i n f o r m a t i o ns e r v i c ep l a t f o r m i nt h ep a p e r , f i r s ta n a l y z e st h e t h e o r e t i c a ls y s t e ma s s o c i a t e d 谢n lt h es o a t h e na u t h o rp r e s e n t sas e r v i c e o r i e n t e d a r c h i t e c t u r eo ft r a f f i ci n f o r m a t i o ns e r v i c e sp l a t f o r m ,u s i n gj 2 e ea r c h i t e c t u r ea n dw e b s e r v i c et e c h n o l o g y t h i sa r c h i t e c t u r eh a st h el o o s ec o u p l i n ga n dt h es e r v i c et r a n s p a r e n ta n ds o o n t h e n ,f o rt h eu s eo fl e g a c ys y s t e m sc a nc o n t i n u et os t u d yak i n do fp a c k a g i n gt e c h n o l o g y , l e g a c ys y s t e m sc a nb ep a c k a g e da saw e bs e r v i c e ,i tc a na v o i du n n e c e s s a r yw a s t e i nt h e p r o c e s so ft h et r a f f i ci n f o r m a t i o ns e r v i c ep l a t f o r mi m p l e m e n t ,t h r o u g hn e e d sa n a l y s i s ,s e r v i c e d e s i g n ,s e r v i c ei m p l e m e n t ,t h ed e p l o y m e n to fs e r v i c eb u s ,a n d v e r i f i c a t i o no fs y s t e m f u n c t i o n a l i t ya n dp e r f o r m a n c et om a k et h es e r v i c et r a n s p a r e n c y , s e r v i c el o o s e l yc o u p l e d , s e r v i c ec e n t r a l i z e dm a n a g e m e n t ,a n df u l l ye m b o d i e st h ea d v a n t a g e so fs o aa r c h i t e c t u r ea n d b u i l d i n ge n t e r p r i s e - c l a s sa p p l i c a t i o n s ,t h ef l e x i b i l i t ya n dq u i c k n e s s t h i ss t u d yi st op r o v i d ep e r f e c ta n dh j 咖q u a l 埘t r a f f i ci n f o r m a t i o ns e r v i c e s ,t om a k ea v a r i e t yo ft r a f f i ci n f o r m a t i o ns o u r c e st o g e t h e rt oe s t a b l i s ha ni n t e g r a t e dt r a n s p o r ti n f o r m a t i o n s e r v i c ep l a t f o r m i tc a np r o v i d et h eb a s i cd a t at oi n t e l l i g e n tt r a n s p o r t a t i o ns y s t e m n o to n l y s o l v et h ep r o b l e n ao ft r a f f i ci n f o r m a t i o ni s o l a t e d ,b u ta l s os a v et h ee x i s t i n gi n v e s t m e n t ,b u t a l s oi n c r e a s et h ec a p a c i t yo ft h er o a d ;i te n a b l e sav a r i e t yo fm o d e so ft r a n s p o r t a t i o nt o e f f i c i e n t l y l i n k e da n dc o o r d i n a t e do p e r a t i o n , c a nb r i n gc o n v e n i e n c et o c i t i z e n st r a v e l u l t i m a t e l y , e n h a n c es e r v i c el e v e l sa n dt h ee c o n o m i c b e n e f i t s k e yw o r d s :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 ) ;w e bs e r v i c e ;e s b ( e n t e r p r i s es e r v i c eb u s ) ; j n i ( j a v a n a t i v ei n t e r f a c e ) 4 2 遗留系统现状概述2 3 4 3 遗留系统的服务封装研究2 4 4 3 1 服务封装的方案基本思想2 4 4 3 2 数据层次的服务封装研究2 4 4 3 3 业务层次的服务封装研究2 5 4 4 小结31 5 交通信息服务平台的设计与实现3 2 5 1 需求分析3 2 5 1 1 需求概述3 2 5 1 2 系统用例3 4 5 2 交通信息服务平台总体结构3 5 5 3 服务的设计3 7 5 3 1 域分解3 8 5 3 2 业务流程分解3 8 5 3 3 服务发现3 9 5 3 4 服务规约4 0 5 3 5 服务实现方式选择及设计4 2 5 4 服务的部署4 3 5 4 1e s b 产品分析4 3 5 4 2 服务的部署4 4 5 5a l s b 中的安全策略。4 8 5 6 系统整合与测试4 9 5 6 1 系统整合4 9 5 6 2 系统测试51 5 7 小结一5 l 6 结论5 2 参考文献5 3 攻读硕士学位期间发表的论文5 5 致 射5 6 学位论文知识产权声明5 7 学位论文独创性声明5 8 目录 1 绪论l 1 1 本文的研究背景和意义1 1 2 国内外研究现状l 1 3 论文研究的主要内容2 1 4 论文组织结构2 2s o a 及相关技术4 2 1s o a 概j 苤4 2 1 1s o a 的模型4 2 1 2s o a 的基本特征5 2 1 3s o a 的优点6 2 2w e bs e r v i c e 技术研究7 2 2 1w 曲s e r v i c e 协议栈7 2 2 2w e bs e r v i c e 与s o a 的关系9 2 3s o a d 建模方法介绍9 2 4 企业服务总线技术1 1 2 4 1 引入企业服务总线技术1 1 2 4 2 企业服务总线的定义1 3 2 4 3 企业服务总线在s o a 中的角色1 3 2 5 小结1 4 3 交通信息服务平台中的s o a 架构1 5 3 1w e bs e r v i c e 实现分布式服务的基本原理1 5 3 2 基于j a x r p c 实现w e bs e r v i c e 。15 3 2 1j a x r p c 在w 曲s e r v i c e 中的作用1 6 3 2 2 服务器端实现方案16 3 2 3 客户端实现方案1 9 3 3 利用e s b 实现s o a 架构2 0 3 3 1 交通信息服务平台的s o a 架构设计2 0 3 3 2 交通信息服务平台的s o a 架构的技术实现参考2 1 3 4 小结2 2 4 遗留系统封装2 3 4 1 遗留系统及其特点2 3 4 1 1 遗留系统2 3 4 1 2 遗留系统的特点2 3 i 1 绪论 1 1 本文的研究背景和意义 交通运输是国民经济和社会发展的基础,随着汽车数量的逐年增长和人口数量的不断 增加,交通运输业正在面临着前所未有地挑战,如交通事故、道路阻塞、运力紧张和环境 污染等等,为了解决交通需求不断增加以及交通供应水平有限等一系列问题,信息化是其 必然的选择,由此各个区域、各个行业的管理者纷纷建立了自己的交通信息管理系统,交 通信息管理系统是一个人、车、路和环境综合作用的庞大且复杂的系统。虽然这些系统解 决了一些眼前的问题,但是由此也产生了一系列更为严重的问题,就是各种不同机构和不 同区域的交通信息交流不畅,无法将采集来的交通信息共享,跨部门协作难以实现,很难 为高层决策提供及时、准确的信息,同时还使系统运行成本居高不下,给系统的开发人员 带来了繁冗的工作,极大的限制了政府的办公效率,更制约了我国智能交通系统的发展。 在这种情况下,就产生了对交通信息系统进行整合的需求,期望能够在一个平台上对 多个系统中的私有信息甚至功能进行共享使用,把这个整合后的平台称作交通信息服务平 台,它可以向公众发布及时且准确的交通信息,实现交通管理的信息化和智能化,以缓解 交通拥挤、减少交通事故发生率、提高路网通行能力;还能使大众、管理者和决策者对可 能面对的交通环境信息有较好的掌握,并据此做出正确决定。 交通信息服务平台是以提供完善优质的交通信息服务为目的,实现交通信息的统一管 理,以及信息资源的融合,建立一体化的信息管理、信息服务平台。它是对交通信息化内 涵的发展和延伸,是在交通运输领域广泛使用现代信息技术,开发利用信息资源,改造交 通运输管理流程,最终实现服务水平和经济效益的双重提升。 1 2 国内外研究现状 早在上世纪中期,欧美许多国家就开始扩建路网规模、建设四通八达的道路交通,然 而这样的建设依然无法满足它们日益膨胀的交通需求,从六十年代开始,它们研究、试验 和开发了各种交通信息管理系统,并为此投入了大量人力、物力和金钱。当前,随着科学 技术的日新月异,以美国、欧洲和日本为主的一些发达国家,将先进的计算机技术、通信 技术结合在一起,建成了功能强大的智能交通系统。 在这些交通信息管理系统中,日本建设的车辆信息通信系统( v i c s ) 具有一定的代 表性,该系统主要具有四大功能,有信息的采集、处理、分析和利用。它的工作过程是: 将从各地采集来的道路交通信息和车辆信息汇集至t j v i c s 中心,在处理成能够适应车载装 置的类型后,将需要时间、堵塞信息、道路信息、停车场信息等发送给司机和出行者。该 系统为日本的智能交通系统发展做出了重要贡献。 我国在这方面起步较晚,但近些年发展迅速,就拿北京市来说,为了奥运期间的道路 畅通和交通安全,经过多方努力,目前已经建成国内最先进的公众信息服务系统,整个系 统的建设包含了数据信息的采集、基础网络建设、数据信息处理、信息发布这三部分,是 一项复杂且庞大的交通领域整合信息化系统【4 】。数据信息的采集是将搜集到的所有可能有 用的数据汇集在一起;基础网络建设为系统的信息传递与整合提供总线平台;数据信息处 理部分作为整个系统的核心,将各信息源收集来的数据信息进行处理和存储,以及对数据 的融合与筛选,然后经由各子系统处理,生成可以向出行者公开的交通信息;对于信息发 布系统来说,作用也是非常重要的,它可以将前几个阶段整理好的数据采用各种方式发布 给出行者,使他们能够及时获取各类交通信息【5 1 。 1 3 论文研究的主要内容 针对上述研究背景和意义,本文采用s o a 的体系结构设计并实现了“交通信息服务 平台”。总体来说,本课题的主要内容为: ( 1 ) s o a 的研究。 s o a 作为当前流行的软件架构,具有松散耦合、粗粒度以及透明灵活等一些特征。 我们只有充分利用s o a 的这几个特性,才能使道路交通以最快、最灵活、最节省成本的 方式满足当前人们不断膨胀的交通需求。 ( 2 ) 基于s o a 架构的交通信息服务平台研究。 在我国,目前已经投入使用的交通信息系统数不胜数,这些系统又分属于各个不同的 部门和单位,自然很难协调工作、共享数据,这就对我国的交通业发展产生了制约。在研 究了交通信息系统的这些特点后,又结合西安市的现状,才开始对交通信息服务平台进行 设计和实现。以e s b 、w e bs e r v i c e 、j 2 e e 等技术为切入点,研究了如何在遵循s o a 特 性的基础上,构建一个灵活快捷、需求多变的交通信息服务平台的s o a 架构。 ( 3 ) e s b 的研究。 e s b 对构建s o a 架构有许多优越性,研究e s b 是设计与实现交通信息服务平台必要 的准备。近几年来,知名公司的e s b 产品层出不穷,对它们的研究和选择也会很好的帮 助我们构建s o a 架构。 ( 4 ) 遗留系统的研究。 遗留系统作为组织内部的关键角色,在长期的运行中已经积累了组织内的大量信息和 数据,在建立交通信息服务平台时,我们不应该将其简单的扔掉,因此可以利用现有的技 术永远努力地更新遗留系统。 1 4 论文组织结构 论文各章的内容安排如下: 第一章绪论 2 简单介绍了论文的研究背景和意义、国内外研究现状、论文的主要内容以及论文的组 织结构。 第二章s o a 及相关技术 介绍了s o a 的一些理论基础,包括概念、特征、模型以及优缺点等,可以实现s o a 架构的w e bs e r v i c e 技术,以及企业服务总线和服务建模的相关知识。 第三章交通信息服务平台中的s o a 架构 对如何设计交通信息服务平台中的s o a 架构给出了详细思路。综合了j a x r p c 实 现w e bs e r v i c e ,再引入企业服务总线对其进行整合,并给出了交通信息服务平台的s o a 参考架构和技术实现模型。 第四章遗留系统封装 重点研究了如何利用j n i 技术将遗留系统封装为w e b 服务,核心是对数据层和业务 层的封装,并通过一个典型实例对该封装技术进行了验证。 第五章交通信息服务平台的设计与实现 介绍交通信息服务平台的需求和总体结构,结合最新的j 2 e e 技术,设计并实现每个 服务,最后将设计好的服务整合在企业服务总线上进行发布。 第六章总结与展望 总结本文工作,并对以后的研究工作进行展望。 2s o a 及相关技术 2 1s o a 概述 s o a 中文翻译为面向服务的软件体系结构,它既是一种面向服务的企业应用架构, 也是一种分布式的软件结构模型。在这种架构中所有的功能都由自治的服务来完成,它们 可以集成在一个应用中,也可以分布在互联网上,还可以建立在异构的平台上。s o a 的 关键理念是将各个应用程序的不同功能组件从原本复杂的环境中抽象出来,并将其组件化 封装为功能独立的服务。它并不是一种全新的思想,早在9 6 年g a r t n e r 就已经提出,但 是实现s o a 的技术却一直不够成熟。近些年来,随着j 2 e e 技术的不断深入人心,企业 j a v a b e a n ( e n t e r r i s ej a v a b e a n ,e j b ) 的发布以及e s b 技术的成熟,使得s o a 得到了快 速的发展,开始了越来越广泛的应用。 2 1 1s o a 的模型 在s o a 模型中,描述了三种角色:服务提供者、服务注册库和服务请求者,它们执 行三种操作:发布、查找、绑定,具有简单、动态和开放的特性。如图2 1 所示,描述了 s o a 的参考模型。 穗 癸钟”8 “? 警 二 雾碧 觏一一* 服务请求舞 1 w s 现籀述 疆进s o a p 琏矮 图2 1s o a 参考模型 ”氇 参妒”。 t 施 服务提供者 在此模型中,包含以下几种角色【6 】: ( 1 ) 服务提供者 服务提供者被看做是一个可以通过互联网寻址的角色,它能够接受和执行来自消费者 的请求信息。服务提供者将自己的服务描述与接口契约一起发布到服务注册中心里,以便 4 研 暑一 九n 、 暇 。;哆。:。声 缈 ?一 矿势;。 服务使用者能够及时查找和访问该服务。 ( 2 ) 服务注册库 服务注册库可以说是一个包含可用服务的网络可寻址的目录,该目录能够接收并存储 服务契约,供服务消费者调用或访问服务时使用。 ( 3 ) 服务请求者 服务请求者通常是一个请求服务的其他服务、应用程序,甚至还可以是某种类型的软 件模块,能够从服务注册中心查找并定位所需要的服务,然后通过传输机制来绑定该服务, 最后通过传输协议规定格式的请求来运行该服务功能。 服务的提供者和请求者往往是相互分离的,所有的服务信息位于两者之间的服务注册 库中,服务注册库起到一个中介的作用,它能将服务提供者提供的服务按照一定的标准进 行整理归类,然后向请求者发布服务接口,请求者可以在服务注册库中查找自己需要的服 务,最后服务提供者与请求者通过事先约定好的协议进行交互。 在s o a 架构中,每个参与者都扮演着上图中显示的一种或多种角色,在这些角色之 间常常使用以下三种动作【6 】: ( 1 ) 查找服务 一, 服务请求者根据约定好的协议来查找和定位相关服务,查找服务的操作主要是由用户 或者其它服务发起的。 ( 2 ) 注册服务 服务提供者会把服务的描述信息发布到服务注册中心,这些信息包括与该服务交互时 一定会使用的内容,例如网络位置、服务功能、传输协议和接口信息等。 ( 3 ) 绑定并执行服务 当服务请求者发现其需要的服务,它会根据服务描述中的相关信息,在运行时将该服 务绑定并进行访问。 为了配合上图中的这三种操作,s o a 必须对每个服务进行一些必要的描述,这就是 服务描述。服务描述一般会有以下几个特点:第一,由于语义特征在查找服务的过程中起 着重要作用,服务注册库利用它为服务提供者进行分类,服务请求者则会根据它来查找和 定位自己需要的服务,因此在服务描述中必须声明服务的语义特征。第二,在访问某些特 定服务时,需要用到该服务的接口特征,因此服务描述中还应该包含接口特征。第三,服 务描述还应该包含使用该服务的费用、安全要求等一些非功能性特征。在服务描述的这三 个特点中,除了语义特征可以帮助查找服务外,接口特征和非功能特征也有帮助查找服务 的功能1 7 j 。 2 1 2s o a 的基本特征 在s o a 架构中,服务之间的通信并不涉及底层结构,而是通过精确、可靠定义的接 口进行,具有松耦合、易重用等特征,具体包含下面几点i l 】: ( 1 ) 服务的可封装性。可以将s o a 中的服务屏蔽掉所有的技术实现细节,然后封 5 装为业务组件,这样不论服务内部怎样修改,只要它的接口不变,就不会影响用户的使用。 ( 2 ) 服务的可重用性。由于每个服务都是独立的个体,与底层实现和用户的需要没 有任何关系,因此可以极大地方便服务的重复使用,达到降低成本的目的。 ( 3 ) 服务是独立实体。由于s o a 架构中的服务是由部件构成,因此服务自身具有 独立、模块化、自包含等特点。 而且s o a 非常强调架构中提供服务的功能实体的完全独立自主的能力。它与传统的 组件技术相比有很大区别,比如在c o m 、c o r b a 或者e j b 等一些传统的组件技术中, 都需要有一个宿主,即h o s t 或s e r v e r ,它的作用主要是用来存储和管理这些功能实体, 因此组件与宿主是一种相互依赖的关系,当宿主本身或者其他功能部分出现问题时,存在 于该宿主上运行的其他应用服务也会相应受到影响;当宿主运行结束时,组件的寿命也会 随之结束。而在s o a 架构中,就不会出现上述情况,因为它非常强调实体的自我管理和 恢复能力。常见的自我恢复技术有消息队列、集群系统、冗余部署和事务处理,这些在 s o a 中都起到了至关重要的作用。 ( 4 ) 服务支持互操作性。服务之间通过定义完好的协议,采用同步或异步方式进行 交互。 ( 5 ) 服务的位置是透明的。服务的请求者不必知道哪一个服务能够完成自己的请求, 以及这个服务处在什么位置,使用什么语言,它只要知道自己可以使用这个服务完成任务 就可以了。 ( 6 ) 服务的松耦合。服务的所有参与者之间只通过接口进行联系,提供者的内部怎 么修改,怎么实现,怎么定义都与请求者无关。 ( 7 ) 基于文本的消息传递。 在c o m 、c o r b a 这些传统的组件模型中,采用的是二进制的消息传递方式,从服 务器端传往客户端的是一个二进制编码的对象,在客户端通过调用这个对象的方法来完成 相应功能;但是在i n t e m e t 环境下,存在有大量异构系统,这些不同语言、不同平台的系 统对数据和数据类型定义都各不相同,给不同的服务之间传递数据造成很大障碍。因此这 就决定了s o a 系统必须采用基于文本而非二进制的消息传递方式。因为基于文本的消息 本身是不包含任何处理逻辑和数据类型,对数据的处理完全依赖于接收端的方式,服务间 只传递文本,这就巧妙地绕过了兼容性这个大难题。 2 1 3s o a 的优点 s o a 的出现从一定程度上改变了应用软件的开发方式,它要求开发人员将各种应用 程序都设计为服务,始终将服务的可重用性放在首位,使新开发出来的服务也能够被重复 使用【7 1 。这样的服务具有的最大优点是:它们不光可以单独使用,也可以随意组合成新的 服务来使用。因此,采用s o a 架构能给我们带来以下一些优点: ( 1 ) 可以充分利用现有资产。s o a 内部包含一个抽象层,各个企业可以通过它加强 自身在i t 方面的投入,方法是将已经存在的各种系统包装成提供相应功能的服务,以便 6 继续利用现有资源。 ( 2 ) 更利于集成和管理现有资产。s o a 能够将企业内部发生的改变,以及这些改变 所带来的影响降到最低,使得集成和管理现有资产变得更加方便。 ( 3 ) 更快的响应速度。s o a 可以在已有的服务中组合出新服务,使得在灵活响应商 业要求方面具有特殊优势。将现有的组件或服务重新组合并加以利用,可以有效缩短软件 开发周期,并且对改变做出正确响应。 ( 4 ) 减少成本和增加重用。当s o a 中的业务服务公开后,这些服务是以松散耦合 的形式等待调用,服务使用者可以很容易对这些服务组合、利用,这表示资源负担在减少、 以及降低成本的可能性在增加。 2 2w e bs e r v i c e 技术研究 s o a 有许多种实现效果,现阶段应用最多的是加入w e b 服务来实现。业界普遍认为 利用w e b 服务来实现s o a 有这样一些优点:它是简单的、可以大范围推广的并且是基于 标准的。这样就有效地防止了对现有的方案不断投入资金和精力,受限制于那些垄断厂商。 w e b 服务还有一个优点就是支持互操作,企业为了降低成本,可以选择不同厂商的、具 有某项优势的单个产品。 对于w e b 服务的定义,i b m 公司的h e a t h e rk r e g e r 有这样的看法:w e b 服务会涉及 到一些操作的接口,这些操作主要指利用x m l 消息传递机制,并且可以通过互联网访问 的操作。w e b 服务是用标准的而且规范的x m l 语言描述,在描述中,涵盖了服务互操作 需要的所有细节旧1 。 w e b 服务作为一种新型分布式应用构件,它是基于开放标准的,不仅仅可以为构造 松耦合应用提供数据,而且使得用户只需组合服务就可以直接参与,而不必重写繁琐的代 码,这些都是因为w e b 服务在满足用户需求方面具有优势。 2 2 1w e bs e r v i c e 协议栈 由于w e b 服务应用非常广泛,所以想要实现一个完整的w e b 服务体系就必须有一系 列的协议来约束和支撑。到目前为止,w e b 服务协议栈依然在不断扩充,下图2 2 展示了 现阶段已经投入使用的w e b 服务协议栈。 1 网络传输层 在所有的w e b 服务协议中,网络层是互操作栈的基础。如果我们想让w e b 服务能够 被来自不同系统的用户使用,那我们就必须采用应用最广泛的w e b 服务的数据传输技术。 h t t p 理所当然的凭借其普遍性,成为w e b 服务实现中首选的网络传输层协议。 2 数据表现层 x m l 在数据表现层中扮演着重要角色,它为整个w e b 服务上层协议提供了数据和信 息描述手段。当前,x m l 是全球范围内,用于描述数据以及交换数据的一种标准方式。 7 t o o l l a v c r i s s u e s w s f l s e r v i c ef l o w s t a t i e - u d s c r c , c ed 汝嘲 d i r e e t - u d d i s e r v i c e 喇c a t i o n o , 皇 & 州强:s 撕埘o n : i 皂 篇 每 ;w s d l s e r v i c ei m p l e m e n t a t i o n 厅 暑 霉 s e r v i c ei n t e r f a c e 厅 o i t 霜 嚣 暑 ;s 撇x m l - b a s e dm 嗍弧g 吨 窨 :x m 已s c h e m a d a m 删趣 x m l d a mp r e s e n t a t i o n h r 瞪、f 糟 s m t p 、m q d a mp r e s e n t a t i o n 图2 2 w e b s e r v i c e 协议栈 3 数据模型层 作为描述数据结构的数据模型,数据模型层同时也是一种数据,所以,描述数据结构 的方式也可以使用m ,- 一这种基础的数据表现方式。 4 基于x m l 的消息层 s o a p 协议在这一层中被广泛使用,而且所有的s o a p 消息都能够进行查找、发布和 绑定等一系列操作。 5 服务描述层 服务描述可以为采纳w e b 服务提供具体方案,一般采用w s d l 进行描述,w s d l 是 一种基于x m l 格式的基础标准,它可以定义和实现服务接口。w s d l 把一个完整的服务 描述分为服务实现和服务接口这两个部分。如果根据w s d l 进行服务实现,我们还必须 先对服务接口进行定义。 6 服务发布层 在该层中,服务发布是为了让服务请求者得到w s d l 文档,这一操作可以在任意阶 段执行。最简单的方法就是利用电子邮件的方式进行直接发布。在本文中我们采用的是将 w s d l 文档导入企业服务总线来发布服务。 7 服务发现层 服务发现层的主要功能是进行发现服务。如果w e b 服务没有公开发布出来,那么它 就不能被找到。 8 服务工作流层 该层的主要任务是描述怎样执行服务到服务的通讯、协调和流程,用于描述这些信息 交互的是w r e b 服务工作流语言1 9 。 由于许多国际组织、知名厂商对w e b 服务的认识略有差异,因此他们给出的w e b 服 s 务协议栈也有所差异,但是很多基本的方面都是相同的,比如x m l 、s o a p 、u d d i 、w s d l 的使用。 2 2 2w e bs e r v i c e 与s o a 的关系 许多开发人员不明白s o a 和w e b 服务有什么区别,他们认为:s o a 是恢复w e b 服 务地位的一个标志。其实,s o a 和w e b 服务应该是两个不同领域的问题,前者是抽象的 概念,而后者是具体的实现;前者实现的是服务和技术的完全分离,而后者实现的是服务 接口和服务实现的完全分离。s o a 实际上就是一个概念模型,许多松散耦合的服务在这 个模型中能够被查找、发布和调用。与此不同的是:w e b 服务是一个框架结构,该框架 结构由一组协议构成的协议栈所定义。可以这样说,s o a 的实现方式有很多种,而w e b 服务就是其中之一。 此外,就技术上来讲两者的区别也很大。w e b 服务的服务接口必须在绑定具体的服 务实现组件后,才能实现该服务,这就完成了具体的服务封装,如下面的图2 3 所示。这 样一来,客户端不必知道服务是怎样实现的,也就实现了服务的透明性,但对于服务实现 组件来说,它本身了解服务是怎样实现的,另外当客户端调用w e b 服务组件时,它也清 楚w e b 服务的具体位置和实现方法。当然,这些在一定程度上,实现了抽象,但是也造 成了不灵活。 图2 3 封装服务实现组件 对整个s o a 架构平台来说,它只能与具体的服务接口联系,对服务接口进行封装, 如下面的图2 4 所示。这样的结构完全实现了服务接口、位置以及传输协议的透明化。为 更进一步的实现具有高度灵活性的服务打下了基础【1 4 】。 图2 4 封装服务接口 就现在来说,w e b 服务已经可以很好的实现s o a 架构,不过s o a 架构的实现并不 是只能利用w e b 服务。其他还有很多方法可以使用,例如c o r b a 、d c o m 等。 2 3s o a d 建模方法介绍 在s o a 架构中包含有三个抽象角色【1 5 】: ( 1 ) 操作:是代表单个具体业务逻辑的事务。运行时往往会产生添加、删除或更新 9 s o a d 由流程驱动,因此还必须进行过程建模。过程建模的目标有以下几点:一是透 彻的研究当前任务的需求和流程进展情况,及时从中发现问题、解决问题;二是联系现阶 段的需求任务,深层次的发掘可以改进的业务领域,以便支持今后的业务模式;三是给业 务操作添加适当的规则,使实现逻辑能够标准化;四是将已经设计好的流程在系统中加以 巩固,再通过信息技术来整理、优化流程。 ( 3 ) 组件建模 组件建模源自基于组件( c b d ) 的设计思想,通过创建组件来严格匹配业务实体( 如 驾驶员、身份证、违章信息) ,组件还能够封装匹配这些实体的操作,其目标是创建可复 用的部件。在s o a 建模中,利用现有系统组件,直接充当s o a 系统的一个单元,或者 是将现有组件的功能进行分解,然后加入到全新的s o a 单元中去。 ( 4 ) 服务建模 1 0 这里的服务建模包括识别和组织服务,以便能够支持组件。对服务提供者来说,如此 多的服务可以直接整合到c b d 的容器中,来实现它们的功能,也可以通过加入已有功能 来实现此服务。服务也许是细粒度的,也许是粗粒度的,这完全取决于功能需求。在s o a 中,映射到业务逻辑的应用是在业务流程分析的过程中确定的。 在理解s o a 体系结构后,可以将s o a 系统分为下图2 5 所示的结构图【1 8 1 。 s o a d 建搜之义联次s o a 履务定义澎次 表承甾 ip o r t l e t s | 磅陡域 质 牡 甏嚣o 量 斋 蝣务流稷 。 笈 、 瑟 ,爱 珑 垒 体 峨务激务 蟹7 丫h 务n ) ( ) 系 蒋 1 藤 六 务 软住禳势 触筑封卦 物 瑾 屡 i 翱 组 娅 件软件组件 项 i 或缸业中娩件 授 醛 撵作系统 2 4 企业服务总线技术 图2 5s o a 服务定义层次和s o a d 建模层次 2 4 1 引入企业服务总线技术 、 前面已经详细介绍了s o a 和w e b 服务的相关概念。下面假设我们已经将系统中需要 的功能封装成了服务,这些服务之间相互独立,还可以随意调用,这样的结构实现了点对 点的服务

温馨提示

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

评论

0/150

提交评论