(计算机软件与理论专业论文)基于soa的分布式城管指挥协同工作系统的研究与实现.pdf_第1页
(计算机软件与理论专业论文)基于soa的分布式城管指挥协同工作系统的研究与实现.pdf_第2页
(计算机软件与理论专业论文)基于soa的分布式城管指挥协同工作系统的研究与实现.pdf_第3页
(计算机软件与理论专业论文)基于soa的分布式城管指挥协同工作系统的研究与实现.pdf_第4页
(计算机软件与理论专业论文)基于soa的分布式城管指挥协同工作系统的研究与实现.pdf_第5页
已阅读5页,还剩96页未读 继续免费阅读

(计算机软件与理论专业论文)基于soa的分布式城管指挥协同工作系统的研究与实现.pdf.pdf 免费下载

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

文档简介

摘要 摘要 当前,电子政务在应用中常遇到信息孤岛、异构性、可交互性差、可扩展性低 等问题。而城市管理指挥系统是一类特殊的电子政务系统,市区两级部门和协同联 动单位都有各自不同的指挥系统,协调通信存在着接口规范不一致与数据不一致等 问题,使得系统之间的协同工作效率低下,所以有必要研究一个面向分布式环境的 多指挥中心的协同工作平台。 本文在广东省计算机集成制造系统重点实验室承担的广州市城市建设管理监控 指挥系统开发项目的基础上,通过对广州市城管信息化的应用现状和城市管理指挥 系统的建设目标的概括,对城市管理指挥系统的工作特征进行了分析,提出并建立 了一个基于s o a 的分布式城市管理指挥协同工作系统的总体结构。 本文笔者仔细研究和比较分析了各种分布式计算模式,探索相关前沿技术,从 而确定了本文的技术路线和研究方法;进而深入研究了s o a 的原理、框架结构、基 本特征、参考模型和设计原则等相关理论;研究了企业服务总线的编排模式以及x m l w e bs e r v i c e s 分布式计算模式,深入掌握x m l 语言和s o a p 协议;研究了各种协同 工作模式的特点以及相应的应用领域;采用s o a 设计原则与方法对分布式协同指挥 系统的工作流程进行了分析,发现关键服务,定义了服务接口,构造了服务模型, 进而优化了业务流程,建立了面向分布式结构的协同工作模型;利用w e bs e r v i c e s 技术,基于c # 和x m l 语言编写w e b 服务,创建和封装了服务构件,系统化地部署w e b 服务,并建立了私有的u d d i 注册中心,以管理w e b 服务的发布和查找,通过s o a p 协议绑定和调用w e b 服务,从而建立了w e b 服务层;采用s o a 和基于组件的技术, 构建应用系统,主要开发了事件接入、事件分派、控制监督等几个业务处理系统; 并利用协同机制下的通信协议和数据同步等技术,构建一个基于s o a 的协同工作平 台,以实现内部应用系统和外部指挥系统与w e b 服务层之间的数据转换与交互。 广州市城市建设管理监控指挥系统经过笔者所在的实验室近两年的开发已投入 实际运行,基于s o a 的监控指挥系统架构满足了广州市城市管理机制的需要,实现 了较高效率的分布式应急指挥与协同联动工作,为后续的城市应急指挥系统的开发 奠定了稳固的基础。 关键词:电子政务;面向服务的架构;分布式;协同工作;w e bs e r v i c e s ! 奎三些查兰! :兰鐾:! ;兰堡丝兰_ 皇 a b s t r a c t n o w a d a y s ,w ee n c o u n t e rs o m ep r o b l e m si nt h ep r o c e d u r eo f e - g o v e r n m e n t sa p p l i c a t i o n , s u c ha si s o l a t e di n f o r m a t i o ni s l a n d s ,h e t e r o g e n e o u s ,b a di n t e r o p e r a b i l i t y , p o o re x p a n s i b i l i t y a n d o n c i t ym a n a g e m e n td i r e c t i n gs y s t e m ( c m d s ) i so n ek i n do fs p e c i a le - g o v e r n m e n t s y s t e m , c i v i cd e p a r t m e n t ,b o r o u g hd e p a r t m e n ta n dc o l l a b o r a t i v el i n k a g ed e p a r t m e n t sa l lh a v e t h e i ro w ud i r e c t i n gs y s t e m s ,t h e s es y s t e m s c o m m u n i c a t i o nh a v ep r o b l e m ss u c ha sv a r i a n c e o fi n t e r f a c ec r i t e r i o na n da b h o r r e n td a t a t h e r e f o r e ,t h ec o l l a b o r a t i v ew o r ke f f i c i e n c y b e 俩e e ns y s t e m si sv e r yl o w ,w en e e dt od e v e l o p eac o l l a b o r a t i v ew o r kp l a t f o r mw h i c hi s o r i e n t e dd i s t r i b u t e de n v i r o n m e n ta n df i t sf o rm u l t id i r e c t i n gc e n t e r s b a s e do nt h ep r o j o c ta b o u tg u a n g z h o uc i t yc o n s t r u c t i o nm a n a g e m e n tm o n i t o r i n g d i r e c t i n gs y s t e mw h i c hi sb e e nt o o kc h a r g eo fb yg u a n g d o n gc i m se m p h a s e sl a b o r a t o r y , t h i s p a p e r 8 1 1 1 1 1 5 u p t h e a p p l i c a t i o na c t u a l i t y o fg u a n g z h o uc i t ym a n a g e m e n t i n f o r m a t i o n i z a t i o na n dt h ec o n s t r u c t i o na i mo fc m d s ,a n a l y s e st h ew o r kc h a r a c t e r so f c m d s ,a n dp u t sf o r w a r dan e ws y s t e ms t r u c t u r eo f d i s t r i b u t e dc o l l a b o r a t i v ew o r kd i r e c t i n g s y s t e mi nc i t ym a n a g e m e n tb a s e do ns o a t h i sp a p e r sa u t h o rs t u d yc a r e f u l l ya n dm a k ec o m p a r a t i v ea n a l y s i so fav a r i e t yo f d i s t r i b u t e dc o m p u t i n gm o d e l ,e x p l o r er e l e v a n tc u t t i n g - e d g et e c h n o l o g y , s ot od e t e r m i n et h e t e c h n i c a ll i n ea n dr e s e a r c hm e t h o d so nt h i sp a p e r ;a n dt h e ns t u d yt h e o r i e sd e e p l ya b o u ts o & s u c ha ss o a p r i n c i p l e ,b a s i cc h a r a c t e r s ,r e f e r e n c em o d e l ,d e s i g np r i n c i p l ea n ds oo n ;s t u d y e s ba r r a n g e m e n tm e d ea n dd i s t r i b u t e dc o m p u t i n gm o d e - - x m lw e bs e r v i c e s , m a s t e rx m l l a n g u a g ea n ds o a pp r o t o c o ld e e p l y ;s t u d yt h ec h a r a c t e r i s t i c so fe a c hc o l l a b o r a t i v ew o r k m o d e la n dt h e i ra p p l i c a t i o nf i e l d s ;a n a l y s ed i s t r i b u t e dc o l l a b o r a t i v ew o r kd i r e c t i n gs y s t e m s o p e r a t i o nf l o w ,f i n dp i v o t a l r v i c e ,d e f i n es e r v i c ei n t e r f a c e ,c o n s m m ts e r v i c em o d e l ,t h e n o p t i m i z eo p e r a t i o nf l o wa n db u i l dac o l l a b o r a t i v ew o r km o d e lo r i e n t e d d i s t r i b u t e d e n v i r o n m e n tb ya d o p t i n gm e t h o d so fs o a d e s i g np r i n c i p l ea n dm e t h o d s ;u s ew e bs e r v i c e s t e c h n o l o g yt op r o g r a m m i n gw e bs e r v i c e sb a s e do nc 群a n dx m ll a n g u a g e c r e a t ea n d e n c a p s u l a t es e r v i c ec o m p o n e n t ,b u i l dp r i v a t eu d d ir e 百s t e rc e n t e rw h i c hc a na d m i n i s t e r u p o ns e r v i c e sq u e r ya n dp u b l i s h ,b i n d i n ga n dc a l lw e bs e r v i c e sb ys o a pp r o t o c o l , c o n s e q u e n t l yb u i l daw e bs e r v i c e sl a y e r , u s es o aa n dc o m p o n e n t - b a s e dt e c h n o l o g i e st o n c o n s t r u c ta p p l i c a t i o ns y s t e m s ,m a i n l yd e v e l o p e ds e v e r a lb u s i n e s sh a n d l i n gs y s t e m s ,s u c ha s “i n c e p tc a s es y s t e m ,“h a n d l ec a s es y s t e m a n d “c o n t r o l & s u p e r v i s es y s t e m ;t h e nu s e s o m et e c h n o l o g i e su n d e rc o l l a b o r a t i v em e c h a n i s m ,s u c ha sc o l r m a u n i c a t i o np r o t o c o la n d d a t as y n c h r o n o u s , t oc o n s t r u c tac o l l a b o r a t i v ew o r kp l a t f o r mb a s e do ns o a ,s ot or e a l i z ed a t a t r a n s f o r m a t i o na n dm c i p r o c a t i o nb e t w e e ni n n e ra p p l i c a t i o ns y s t e m s ,o u t e rd i r e c t i n gs y s t e m s a n dw e bs e r v i c e sl a y e r a f t e rt w oy e a r s d e v e l o p m e n tb yt h ea u t h o r sl a b o r a t o r y , g u a n g z h o uc i t yc o n s t r u c t i o n m a n a g e m e n tm o n i t o r i n gd i r e c t i n gs y s t e mh a sb e e nr u n n i n gn o w t h ea r c h i t e c t u r e o f m o n i t o r i n gd i r e c t i n gs y s t e mb a s e d0 1 1s o af i tf o rt h ed e m a n d so fg u a n gz h o uc i t y m a n a g e m e n tm e c h a n i s m ,i m p l e m e n th i 曲e re f f i c i e n c yd i s t r i b u t e de m e r g e n c yd i r e c t i n ga n d c o l l a b o r a t i v el i n k a g ew o r k ,e s t a b l i s hs t e a d yf o u n d a t i o nf o rs u b s e q u e n td e v e l o p m e n to fc i t y e m e r g e n c yd i r e c t i n gs y s t e m k e y w o r d s :e - g o v e r n m e n t :s o a ;d i s t r i b u t e d ;c 0 1 l a b o r a t i v ew o r k ;w e bs e r v i c e s i i i 广东工业大学工学硕士论文 独创性声明 秉承学校严谨的学风与优良的科学道德,本人声明所呈交的论文是我个人在 导师的指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以 标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,不包 含本人或其他用途使用过的成果。与我一同工作的同志对本研究所做的任何贡献 均已在论文中作了明确的说明,并表示了谢意。 本学位论文成果是本人在广东工业大学读书期间在导师的指导下取得的,论 文成果归广东工业大学所有。 申请学位论文与资料若有不实之处,本人承担一切相关责任,特此声明。 指剥币酶价 q 论文作者签字:辛匆缘a 鹑 第一章绪论 1 1 研究背景 第一章绪论 改革开放以来,广州的城市建设取得了长足的发展,城市的基础设施水平不断提高, 城市规模越来越大,城市功能不断完善,城市环境也不断改观。作为国民经济和社会事 业发展的重要组成部分的城市管理工作,在推进城市的现代化建设发展中起着越来越重 大的作用。在当今信息时代,依托计算机网络技术、移动通信技术、电信集成技术、空 间信息技术、单元网格区划编码技术、城市部件管理技术等多种信息技术手段而创新的 数字城市管理模式,实现了城市管理的精确主动和高效率,正在被越来越多的城市所重 视和推动。 广州市的城市管理的现状是与广州市城市建设的发展速度不相适应,一个重要的原 因就是在这样一个大都市城管信息化水平还相对较低。尽管广州市城管系统的信息化建 设已经开通了1 2 3 1 9 咨询投诉系统以及城管网站,但还存在城管信息技术手段相对落 后,缺乏对城市管理重点目标的视频监控,缺乏基于地理信息系统( g i s ) 的对城管资 源( 如人、车等) 进行快速定位的能力,缺乏城管协同工作和应急指挥调度的有效机制 和技术手段,从而严重影响了城市管理的效果。 现行的1 2 3 1 9 系统和城管网站工作流系统都属于集中式系统,数据全部存储在中 央系统,通过b s 模式进行城管业务应用。这种模式存在着网络速度较低,系统功能不 够强大,协同工作模式简单等问题。由于城管工作的特点,市城管指挥中心与城管支队 和各区指挥中心之间以及与各专业局( 如市政、工商等) 之间,需要建立协同工作模式, 各指挥中心则相对独立地实施对所辖案件的处置和指挥调度职能,因此,需要构建一个 面向分布式结构的多个指挥中心之间的协同工作机制和平台,实现灵活有效的任务分派 与指挥调度,提升城市管理的效能。 城管指挥中心的核心是信息系统,它集成了大屏幕电视墙、c t i 电话语音集群呼叫、 尔】。业大学i 。学硕士学位论文 视频监控网络、服务器集群,以及多种网络安全设备等。在实际应用中,城管业务系统 是通过b s 模式应用的,而对大量的诸如车辆和视频监控设各的集成应用是通过c s 模 式实现的。各指挥中心的基于c s 模式的监控指挥系统构成了一个城域范围的分布式的 协同工作环境。在此分布式环境下,要实现资源的共享和协同工作,成为了本文研究的 核心问题。 2 0 0 6 年7 月,笔者所在的广东省计算机集成制造系统重点实验室承担了“广州市 城市建设管理监控指挥系统”的开发任务。在对国内“数字化城管”应用现状进行调研 和分析的基础上,结合广州市城管工作的实际,提出了采用s o a 架构,实现了分布式的 城市管理指挥协同工作系统的设计和开发。 1 2 应用现状 随着社会的发展,城市管理要求越来越高,管理任务逐渐繁重,城市管理的工作量, 复杂度大大增加。广州市城市管理相关部门在信息化建设中做了大量的工作,已建成并 投入使用了“广州城管”网站、城市管理综合执法系统、1 2 3 1 9 城管投诉处理系统等一 批先进的网络与信息系统,取得了较好的应用效果,为深入开展城管信息化工作打下了 良好的基础。但是,这些系统之间缺乏交互性,形成了相对孤立的信息孤岛,系统较羞 的可扩展性,系统的异构性,使得数据的有效利用率低下,系统维护困难,系统间集成 能力很差,从而导致各级工作缺乏协同性,办案效率不高,制约了广卅f 市城市管理指挥 中心的建设。 2 0 0 5 年,深圳市投资1 4 0 0 多万元,建成了全国第一个城市管理指挥监控中心,深 圳的城市管理逐渐由“上街”变为了“上网”。深圳城管办于2 0 0 6 年4 月初启动了城 管指挥中心率先运用智能化的监控设备,并结合刚开通的城管1 l o 热线电话,在全市建 立起一个市容市貌的远程监控“窗口”和信息平台,自城管监控指挥调度系统投入使用 以来,共协调处理了1 5 0 0 多宗违法违章行为,问题解决率近9 0 。目前,深圳的中心 城区和敏感地段,平均每3 平方公里就有一个监视点,对市容、卫生、路灯、绿化、防 火等进行综合监控。不久前,“深圳市城市管理数字化示范应用工程”通过了建设部专 2 第一章绪论 家组鉴定,专家认为,深圳将3 s ( 地理信息系统、全球卫星定位系统、遥感技术信息 系统) 、计算机电信集群技术、网络数字集群通信等高新技术整合应用于城市综合管理, 提高城市管理的整体水平。 北京东城区城管,结合信息化技术,采用了“万米单元网格管理法和城市部件管理 法相结合”的新型城市管理模式,取得良好效果。城市管理新模式运用万米单元网格管 理将北京东城区2 5 3 8 平方公里的范围划分为1 6 5 2 个网格单元,对全区6 大类5 6 种 1 5 7 9 7 6 个城市部件利用地理编码技术定位编码,定位在万米单元网格中。建立城市管 理监督中心和指挥中心,再造城市管理流程,应用、整合多项数字城市技术,研发以手 机为原型的多功能通讯传输工具“城管通”,采用信息实时采集传输的手段,从而实现 精确、敏捷、高效、全时段、全方位覆盖的城市管理模式。万米单元网格管理新模式在 城市管理方面是个创新。它把管理城市的众多部门整合为监督和管理两个轴心。把信息 化技术应用在城市管理中,以数字城市技术为依托,推进城市管理,建立覆盖全时段全 区域的城市管理体系。城管通的g p s 定位每1 5 分钟刷新一次,还可以把城管员的个人 资料、位置、巡查轨迹等内容显示在监督中心大屏幕上,监督其工作。“万米单元网格 城市管理新模式”从0 4 年1 0 月2 2 日启动到3 月初,共接受上报案件8 9 0 0 多件,实际 处理6 9 0 0 多件,平均每天接收处理上报案件约1 0 0 来个,最高峰时达3 0 0 多个,平均 每个案件的处理时间是1 3 5 个小时。相比城管大队过去每年处理5 0 0 多件的工作量, 新管理模式让城管部门在4 个月里完成了相当于过去l o 年工作量,每年节约的资金据 计算可达4 4 0 0 万元。取得了良好的社会和经济效益。 深圳城管和北京城管为广州的城管指挥中心建设提供了很好的经验。然而,上述两 个城市的数字化城管系统的建设采用的都是基于b s 的集中应用模式,不能满足广州市 分布式协同应用的要求。广州市城管委提出的面向分布式多指挥中心的社会协同联动的 工作模式,将实现广州市多个政府职能部门之间的高效灵活的协同联动,提高广州市城 管工作效率。 广东l + 业大学工学硕士学位论文 1 3 开发技术 近几年来,由i b m 为首倡导的面向服务的体系结构( 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 e r v i c e ) ,通过服务间定义良好的接口和契约( c o n t r a c t ) 联 系起来。接口采用中立的方式定义,独立于具体实现服务的硬件平台、操作系统和编程 语言,使得构建在这样的系统中的服务可以使用统一和标准的方式进行通信。这种具有 中立的接口定义( 没有强制绑定到特定的实现上) 的特征称为服务之间的松耦合。由此, s o a 具有两个特点: 1 新的软件系统架构:s o a 不是一种语言,也不是一种具体的技术,更不是一种产 品,而是一种软件系统架构,它尝试给出在特定环境下推荐采用的一种架构,从这个角 度上来说,它其实更像一种架构模式( p a t t e r n ) ,是一种理念架构,是人们面向应用服 务的解决方案框架。 2 服务( s e r v i c e ) 是整个s o a 实现的核心:s o a 架构的基本元素是服务,s o a 指定 一组实体( 服务提供者、服务消费者、服务注册表、服务条款、服务代理和服务契约) , 这些实体详细说明了如何提供和消费服务。遵循s o a 观点的系统必须要有服务,这些 服务是可互操作的、独立的、模块化的、位置明确的、松耦合的并且可以通过网络查找 其地址。 当前,s o a 和w e bs e r v i c e 技术相关的规范、标准正逐渐成熟,企业级应用系统的 建设方法也在随之变化,基于s o a 和w e bs e r v i c e 技术来构建分布式协同应用系统已经 成为各大平台和系统提供商的追逐目标。因此,利用计算机支持的协同工作( c s c w ) 模 式、s o a 架构以及w e bs e r v i c e 服务,可以建立一个扩展性强、集成能力好、松散耦合 的分布式城市管理协同工作平台。 广州市城市建设管理监控指挥系统经过笔者所在的实验室一年半的开发,已投入了 实际运行。基于s o a 的分布式监控指挥系统架构满足了广州市城市管理工作的需要,实 现了高效率的分布式应急指挥与协同联动工作,并为后续的城市应急指挥系统的开发奠 定了稳固的基础。 4 第章绪论 1 4 论文结构 本文的编写共有八章。首先论述了本项目的研发背景,概括性介绍了应用和研究现 状。第二章先对c o r b a 、e j b 和x m lw e bs e r v i c e s 等几种分布式计算技术的发展现状进 行分析,再详细论述相关技术。接着,第三章定义和描述了分布式城市管理协同工作系 统的问题,提出了研究开发的技术路线。在此基础上,第四章提出了基于s o a 的分布式 协同工作系统的总体结构,第五章则建立了基于s o a 的协同机制,并对业务流程进行了 分析,建立了服务模型。第六章从w e bs e r v i c e s 服务的实现和私有u d d i 注册中心的构 建两方面叙述了基于s o a 的系统核心实现。然后,第七章讨论和分析了基于s o a 的分布 式协同工作机制在广州市城管指挥系统的成功应用。最后第八章进行了总结,并给出了 将来的研究工作内容。 5 东i 一业大学工学硕士学位沦文 2 1 分布式计算模式 第二章相关技术综述 分布式计算是一类计算方法,它使得分别配置在网络上的不同计算机系统中的组件 和对象可以被有效的链接和集成,实现多种应用。分布式计算模型提供了一种基础结构, 通过该结构可以调用在网络上任何位置的对象函数。这些对象对于应用程序来说都是透 明的,并且可以提供处理功能,就好像和调用它们的应用程序位于同一台计算机上。其 中的主要实现模型包括c o r b a 、e j b 、x m lw e b s e r v i c e s 。 2 1 1c o r b a 2 0 世纪9 0 年代起,计算环境下逐渐淡化客户机和服务器之间的区别。诸如d c e ( d i s t r i b u t e dc o m p u t i n ge n v i r o n m e n t ,分布式计算环境) 的分布式计算平台概念与 新出现的面向对象开发范例相结合,产生了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 r a r c h i t e c t u r e 。公共对象请求代理体系结构) 。c o r b a 是由o m g ( 对象管理组织,o b j e c t m a n a g e m e n tg r o u p ) 提出的应用软件体系结构和对象技术规范,其核心是一套标准的语 言、接口和协议,以支持异构分布应用程序间的瓦操作性及独立于平台和编程语言的对 象重用。 c o r b a 不提供服务器,而是公开大量可远程访问的功能,这些功能被分解为可惟一 识别的、可远程访问的、能自我管理状态的对象。不同对象通过o r b ( o b j e c tr e q u e s t b r o k e r ,对象请求代理) 进行通信。在连接这些对象时,不需要了解它们的实际驻留位 置。o r b 提供了一个抽象机制( 例如命名服务) ,负责在运行时发现对象。与面向对象 的编程一样,c o r b a 增强了“按接口编程”这一概念。实际上,所有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 ,接 口定义语言) 进行描述。 c o r b a 是一门高级技术,它促进了实时对象的重用,并使用小实体。但c o r b a 的分 6 第二章相关技术综述 布式业务对象的愿景并没有完全实现,因为它的细粒度模型过于复杂,不能用于企业级 软件重用。另外,对于经验不够丰富的开发人员来说,编写c o r b a 程序是一件异常困难 的任务,开发人员必须理解很多复杂的技术概念,如c o r b ai d l 的非琐细( n o n t r i v i a l ) 语言映射。 2 1 2e j b 在2 0 世纪9 0 年代中期,分布式计算模式的演变转变了方向,试图突破早期分布式 对象架构的局限性。新技术将一组对象汇总在单个服务器中,以提高更高的抽象级别, 并增加服务器的服务类型。为了给i n t e r n e t 应用程序提供更高级平台,s u n m i c r o s y s t e m s 公司与1 9 9 7 年推出了e j b ( e n t e r p r i s ej a v ab e a n s ,企业级j a v ab e a n ) 。 与c o r b a 一样,e j b 也依赖于分布式对象模型。但e j b 基于可控制的、存放实际对象的、 数量有限的服务器,e j b 继承了c o r b a 和更早应用程序容器和事务监控器的特点,提供 各种类型的对象,例如以数据为中心的实体b e a n 以及面向会话的对象。 严格的说,e j b 定义了一组可重用的组件:e n t e r p r i s eb e a n s 。开发人员可以利用 这些组件,像搭积木一样建立分布式应用。在装配组件时,所有的e n t e r p r i s eb e a n s 都需要配置到e j b 服务器( 一般的w e b l o g i c 、w e b s p h e r e 等j 2 e e 应用服务器都是e j b 服 务器) 中。e j b 服务器作为容器和低层平台的桥梁管理着e j b 容器,并向该容器提供访 问系统服务的能力。所有的e j b 实例都运行在e j b 容器中。e j b 容器提供了系统级的服 务,控制了e j b 的生命周期。e j b 容器为它的开发人员代管了诸如安全性、远程连接、 生命周期管理及事务管理等技术环节,简化了商业逻辑的开发。e j b 中定义了三种 e n t e r p r i s eb e a n s :s e s s i o nb e a n s 、e n t i t yb e a n 和m e s s a g e d r i v e nb e a n s 。 下面我们来盘点一下e j b 的优缺点m : 1 e j b 的优点 ( 1 ) 规范详细性:e j b 是一种基于规范性的技术。( 这同时构成了e j b 的主要优 点和主要的缺点) 。e j b 规范说明书中描述了应用程序执行的各个方面,包括数据类型, 组件声明周期,角色分布以及其它的东西。 广东i 业大学工学硕士学位论文 ( 2 ) 和j 2 e e 紧密整合:有许多服务器技术以j 2 e e 为中心构建,其中包括e j b 和 其它一些相关技术,如:s e r v l e t s 、j a v a s e r v e rp a g e s 、j a v am e s s a g es e r v i c e 、j 2 e e 连接器架构、j a v a 数据库连接、j a v aa u t h e n t i c a t i o n 、a u t h o r i z a t i o ns e r v i c e ,j a v a t r a n s a c t i o na p i 、j a v a m a i l 技术等等。这些技术使j 2 e e 和e j b 是有机的结合构成一 个非常吸引人的解决方案。 ( 3 ) 很好的伸缩性:只要你的应用程序服务器通过了大多数的资源管理功能,开 发商就可以应用更为复杂的可伸缩算法。 ( 4 ) 有权使用资源管理系统:连同e j b 容器一起,你可以获得上千行的代码来访 问管理资源,包括事务管理系统、安全管理系统、目录服务。因为有了e j b 我们可省去 亲手实现的这一部分。 2 e j b 的缺点 ( 1 ) 巨大而复杂的规格说明:对于一个复杂的分布式系统,有一个文档进行说明 是一件很合理的事情。但是,并不是所有的文档信息都是真正必需的,e j b 的文档反而 成了一个非常不便利的工具。 ( 2 ) 庞大的文件:在你开发一个项目之前,你通常需要阅读1 0 0 0 多页的文档。 这是部署e j b 时非常痛苦的事情。 ( 3 ) 增加程序调试时间:制定e j b 解决方案比远比使用普通的j a v a 代码所需的 时间长,调试e j b 程序也比调试普通的j a v a 代码所需要的时间也长。主要原因是我们 不知道b u g 是出在代码本身还是出在容器上。 ( 4 ) e j b 代码更加复杂:举个例子,为了实现一个s e s s i o nb e a n ,你必须写三个 类,为了实现个实体b e a n ,你需写四个类。增加几个部署描述语句,比如说撮简单 的”h e l l ow o r l d ”程序需要1 0 个文件,而不是一个文件。 ( 5 ) 重复设计的危险:导致这种结果的原因是复杂的文档所致。如果你没有完 全理解e j b 的概念,你就不会很好的驾奴它,让它你所用,反之为你所累。 ( 6 ) 维护困难:e j b 是一个不断更新的技术,在新技术不断推出的时候,代码需 要升级,这就就需要额外的努力和成本来使你的程序和新的e j b 容器兼容。 8 第二章相关技术综述 2 1 3x m lw e bs e r v i c o s 在2 0 世纪9 0 年代,除出现了c o r b a 、d c o m 和e j b 等分布式计算技术外,还出现了 大量分布式计算机中间件的解决方案,以解决分布式事务管理、消息传输、e a i ( 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 ,企业应用集成) 、安全和其他问题。虽然中 间件技术为单个系统的开发提供了卓越的基础结构,m 由于分布式计算概念、标准和产 品过多,产生了“中间件异质性”问题。为了解决这问题,x m l 语言应声而现。1 9 9 8 年 2 月,w 3 c 发布了x m l1 0 规范,即可扩展的标记语言( e x t e n s i b l em a r k u pl a n g u a g e ) 是s g m l 简化的子集,继承了s g m l 重要的三个特性:可扩展性,结构化,有效性成为表示 结构化信息的种标准文本格式。 x m l 是一种流行的、独立于中间件格式,可以在不同应用程序之间交换数据和文档。 与c o r b ai d l 、m i c r o s o f ti d l 或j a v a 接口不同,x m l 不与特别技术或中间件标准绑定, 经常作为一种特殊格式来处理各个不兼容中间件平台的数据。x m l 不需要重量级基础结 构( 如o r b ) ,附有很多不同平台的大量工具,以处理和管理x m l 数据,如s a r 和d o m 等开发源分析a p i 。x m l 非常灵活,最适于解决应用程序异质性问题,也最适于解决中 间件异质性问题。不过x m l 的灵活性也带来重大问题,因为有效的应用程序集成和数据 管理需要更高级别的数据结构和消息传输格式。为此,大量更高级标准应运而生,以解 决x m l 领域出现的问题。经过一段时间,m i c r o s o f t 的工程师们认识到,既需要更高级 x m l 消息传输标准,也需要利用无所不在的i n t e r n e t ,于是利用s o a p ( s i m p l eo b j e c t a c c e s sp r o t o c o l ,简单对象访问协议) 发明了基于x m l 的w e b 服务。 x m lw e bs e r v i c e s 是提供特定功能元素( 如应用程序逻辑) 的可编程实体,任何 数量的、可能是完全不同的系统都可以用常见的i n t e r n e t 标准( 如x m l 和h t t p ) 访 问它。x m lw e bs e r v i c e s 在很大程度上依赖于对x m l 和其他i n t e r n e t 标准的广泛接 受,由此创建的支持应用程序互操作性的基础结构才得以解决许多以前阻碍此类尝试的 问题。 “东i :业大学工学硕l 学位论文 x m lw e bs e r v i c e s 既可以在内部由单个应用程序使用,也可通过i n t e r n e t 公开供 任何数量的应用程序使用。由于可以通过标准接口访问,因此x m lw e bs e r v i c e s 使异 类系统能够作为单个计算网络协同运行。 x m lw e bs e r v i c e s 并不追求一般的代码可移植性功能,而是为实现数据和系统的互 操作性提供了一种可行的解决方案。x m lw e bs e r v i c e s 使用基于x m l 的消息处理作为 基本的数据通信方式,以帮助消除使用不同组件模型、操作系统和编程语言的系统之间 存在的差异。开发人员过去在创建分布式应用程序时通常使用组件,他们现在可以使用 与此大致相同的方式,来创建将来自各种源的x m lw e bs e r v i c e s 组合在一起的应用程 序。 x m lw e bs e r v i c e s 的核心特征之一是存在于服务的实现与使用之间的高度抽象化。 通过将基于x m l 的消息处理用作创建和访问服务的机制,x m lw e bs e r v i c e s 客户端和 x m lw e bs e r v i c e s 提供程序之间无须互相了解其他信息( 输入、输出和位置除外) 。 x m lw e bs e r v i c e s 正在开创一个分布式计算、分布式应用程序开发的新时代。问题 已不再是对象模型之间的战争或者编程语言选美竞赛了。在使用专用基础结构将系统紧 密耦合在一起时,是以牺牲应用程序互操作性为代价实现的。x m lw e bs e r v i c e s 在一 个对这种得不偿失的竞争说不的全新级别上提供互操作性。作为i n t e r n e t 的下一个革 命性的进步,x m lw e bs e r v i c e s 将成为把所有计算设备链接到一起的基本结构“。 x m lw e bs e r v i c e s 综合了基于组件的开发和w e b 的优点,是s o a 的卓越技术平台。 2 2 基于w e b 服务的软件架构 早在1 9 9 6 年,美国g a r t n e r 公司就提出来s o a 的概念,但由于当时技术环境相对 落后,达不到s o a 的实施需求,所以只是萌生了概念,却直沉寂着等待时机。直到近 几年,互联网越来越普及,许多企业将它们的业务转移到互联网领域,为了能够将业务 打包成独立的、具有很强伸缩性的基于互联网的服务,人们提出了w e b 服务的概念,这 才令s o a 得到真正发展的机会。 w e b 服务逐渐流行,于是互联网上大量涌现出基于不同开发平台和语言的w e b 服务 组件。那么如何才能对这些组件进行有效管理,人们迫切寻找一种新的面向服务的分布 l o 筇章相关技术综述 式w e b 计算架构。由此,人们重新把目光投向面向服务架构( s 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 e ,s o a ) ,使得s o a 再次成为人们关注的焦点。 s o a 并不是一种现成的技术,而是一种架构和组织i t 基础结构及业务功能的方法。 s o a 是一种在计算环境中设计、开发、部署和管理离散逻辑单元( 服务) 的模型。 对s o a 的需要来源于需要使业务i t 系统变得更加灵活,以适应业务中的改变。 通过允许强定义的关系和依然灵活的特定实现,i t 系统既可以利用现有系统的功能, 又可以准备在以后做一些改变来满足它们之间交互的需要。s o a 凭借其松耦合的特性, 使得企业可以按照模块化的方式来添加新服务或更新现有服务,以解决新的业务需要, 提供选择从而可以通过不同的渠道提供服务,并可以把企业现有的或已有的应用作为服 务,从而保护了现有的i t 基础建设投资。 就开发体系结构方面而言,s o a 是将来的一个发展趋势。s o a 将数据和信息作为服 务公开的模型使其成为了一个非常强大的概念,与当前的应用程序构建块范例截然不 同。例如解决不同系统间的互通互联问题上有许多不同方法,有原来的c o r b a ,但效果 并不太好。s o a 的体系结构仍旧是三层或n 层结构,但对异构平台各层之间的联系,不 是用c o r b a 、j 2 e e 或n e t 的方式,而且用w b d l 和s o a p 来实现,它们的概念简单统一。 这样,采用s o a 解决系统之间的互通互联问题就方便得多“1 。 s o a 要求开发人员将应用设计为服务的集合。s o a 要求开发人员跳出应用本身进行 思考,考虑现有服务的重用,或思索他们的服务如何能够被其他项目重用。“单独的”、 “独立的”、“封装完善的”服务所具有的一个关键的好处是,可以采用多种不同方法 将它们组合成较大型的服务,由此来实现重用。 但是,s o a 并不仅仅是一种开发方法,它还具有管理上的优点。例如,现在管理员 可直接管理开发人员所构建的相同服务,这远胜于以往管理单个应用的方式。通过分析 服务间的交互,s o a 可以帮助企业了解何时以及为什么业务逻辑被切实执行了,这使管 理员或分析师能有针对性地优化业务流程。1 。 实施s o a 的关键目标是实现企业i t 资产的最大化重用。要实现这一目标,就要在 实施s o a 的过程中牢记它的几个基本特征: 1 服务的封装性( e n c a p s u l a t i o n ) :把服务封装成可以被不同业务流程重复使用的 业务组件。它隐藏所有实现细节,不符服务内部如何修改,使用什么平台、什么语言, 只要保持接口不变,就不会影

温馨提示

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

评论

0/150

提交评论