已阅读5页,还剩51页未读, 继续免费阅读
(计算机软件与理论专业论文)应用服务器性能监控系统的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江大学硕士学位论文 摘要 摘要 随着企业计算的增长导致了基于服务器的大型应用程序的激增,而这些应用 程序中有许多都是部署在软件和硬件组件的复杂混合环境中,由此而产生的性能 监控模型和相关技术已成为当前企业应用管理所面l | 每的热点问题之一。越来越多 的应用程序依赖于应用服务器,应用服务器性能监控和性能分析的工作越显重 要,并成为网络管理领域研究的一个热点方向。 j m ,am a l l a g e m e n te x t c n s i o n s ( j m x ) 是s u n 公司提出的一套管理框架。其规 范定义了基于网络的管理和监控服务管理的完整框架体系,当前应用服务器几乎 都在其内部实现了这样的规范。但国内外的应用服务性能监控系统普遍存在监控 类型单一、监控应用服务器版本不兼容等问题。本文深入分析了j m ) ( 规范,根据 j m x 规范的统一性原则设计和实现了一个应用服务器通用的性能监控体系结构模 型,并实现了模型的图形数据表现和通讯的功能。其有以下特性: _ 建立统一j m x 应用服务器监控模型,实现对不同类型应用服务器监控: _ 采用自定义类加载器解决版本不兼容问题; _ 具有易操作的控制台和直观视图表现形式; _ 系统分布式部署形式灵活; _ 提供灵活的对外接口,方便与其他网管系统的集成。 关键词:j a 、,a 远程管理规范,j a 、,a 信息交换协议,远程调用, 应用服务器,性能监控,安全,网络管理,视图表现 浙江大学硕士学位论文a b 刚t a c t a b s t r a c t w i t l lt h eg r o 叭hc a l c u l a t e so fe n t c r p r i s e ,t h i sh 鸹c a u s e dl a r g c - s c a l ea p p l i c a t j o n s o f 旧盯eb a s e d0 ns e r v e ri n c r e 勰i n gs h a r p l y ,b u ti nt h e s ea p p l i c a t i o ns o f 帆a r et h e y h a v em a n ya 1 1 i st h ed e p l o y m e n tm o d u l ec o m p l e xm 扭e n v i r o n m e mi ns o f h a r ca i l di n t h eh a r d w a r e t h ep e r f o n n a n c em o n i t 耐n gm o d e la n dr e l e v a n tt e c l l n o l o g yw h i c h p d u c e st oi th a v eb e c o m eo n eo fh o tt o p i c so ft h ec u r r e n te n t e r p r i s em a n a g e m e n to f a p p l i c a t i o n 1 1 l em o r ca p p l i c a t i o n sr e l y o nt o t h e 印p l i c a t i o ns e e r ,i t i sm o r e i m p o n a i l tu s i n gt h es e r v e rp e r f b m 锄c em o n i t o r i n ga n dt h e p e 咖肌a c ea i l a l y s j sw o r k 孤di tb e c o m e st l l en e t w o f km a n a g e m e n tr e s e 缸c :ha r e aah o ts p o td i r c c t i o n j a v a m a i l a g e m e n te x t e n s i o n s ( j m x ) i ss e to fm a i l a g e m e n tf a m e sw h i c hs u n c o r p o r a t i o np m p o s e d i t ss t 孤d a r dh a sb e e nd e 6 n e d m p l e t e 疔a m es y s t e mw h i c h b a s e do nm a i l a g e m e mo ft h cn e t w o r ka i l dt h em o n i t o r i n gs e r v i c e ,i nd o m e s t i ca n d f o f c i g n ,t h cp c 面n n a n c em o n i t o r i n gs y s t e m su n i v e 转a lc x i s tm o n i t o f i n gp a t t e ms o l e q u e s t i 衄蛐dc d i t i o ni si n c o m p a t i b l ea n ds oo nt h eq u e s t i o n t 1 1 i sa n i d eh a st t l o r o u g l l l y 锄l y z e dt h ej m xs t a n d 盯d ,d e s i 印e da i l dh a sr e a l i z e d 强a p p l i c a t i o ns e r v e rg e n e r a l p e r f o 珊a n c em o l l i t o r i n g s t n l c t u r a lm o d e l a c c o r d i n g t o t h ej m xs t a l l d a r d i d e n t i c a l p r i n c i p l e ,a i l d h a sr e a l i z e dt l l em o d e lg r 印hd a t a p e r f b r m a n c e a n dt h e c o m m u n i c a t i o nf l i n c t i o n i t si n n o v a t i o n si l l d u d et h ef o n o w i n g : ( 1 ) e s t a b l i s hau n m e dc o n t r o lj m x a p p l i c a t i o ns e e rm o d e l ,t h ed i f f c r e n tt y p e s o fa p p l i c a t i o ns e r v e tm o n i t o r i n g ; ( 2 ) s o l v em ep r o b l e mo fv e r s i o nj i l c o m p a t i b i l i t yb yt l l cu s e dd a s sl o a d e r ( 3 ) w i t ha l le a s y t 0 - u s ec o n s 0 1 ea n dv i s u a lm a l l i f e s t a t i o n so fv i c w ( 4 ) d i s t r i b u t e dd 印l o y m e n tn e x i b i l i t y ( 5 ) p r o v i d en e x j b l ee x t e m a li n t e 吐叱e ,a n do t h e ro o n v e i l i e n th l t e 掣a t e dn e t w o r k m a l l a g e m e n ts y s t e m k e y w o r d sj m x ,j r m p ,r m l ,j f r e e c h a r t , a p p c a t i o ns e r v e r ,p e r f o 珊a n c em o n i t o r ,s a f c ,n e t w o r h n a n a g e m e n t 浙江大学硕士学位论文 图目录 图2 1j m x 规范的架构图 图目录 。7 1 0 图2 2r m i 客户端和服务端层结构图 图2 3 j n d i 体系结构 图2 4j a a s 整体框架图 图2 - 5 应用服务器结构与边界图 图2 - 6 软件互操作客户与服务器通信过程图1 4 图3 1 性能监控系统总体设计原理图1 7 图3 2 性能监控系统封装接口图 1 9 图3 3 性能监控系统工程结构图1 9 图4 1 性能监控模型实现的类关系图 图禾2 模型接口集成关系图2 2 图4 3 搜索管理对象内部实现的流程图2 5 图“判定类型获取参数方法内部实现的流程图2 6 图4 5 远程监听器内部实现的流程图 图4 6 应用服务器类加载器层次图2 9 图4 7 自定义类加载器程序流程图3 0 图禾8 自我管理的连接池流程图 图5 1 视图设计的类关系图 3 4 图5 2 性能监控视图界面加 图5 - 3 绘制曲线流程图。 图5 4 数据记录视图表现内部流程图。 图5 5 树形视图内部流程图4 3 图6 1 监控进程通信实现的内部流程图4 6 图6 2 客户端通信实现的内部流程图。 4 7 浙江大学硕士学位论文 表目录 表4 1 系统表 表4 2 系统表 表目录 3 5 3 5 3 6 3 6 3 7 3 8 4 4 表禾3 信息表 表4 4 值存储表 表4 5 口信息表。 表5 1 界面的类描述的设计表 表6 - 1 系统通信服务命令与处理格式表。 浙江大学硕士学位论文 第1 章绪论 第1 章绪论 1 1 前言 随着企业应用需求复杂性的增加,企业网络规模的不断扩大,这导致了网络 故障率提高、可管理性下降。在中等规模以上的企业网络中,仅仅靠人工利用传 统方式来管理网络是不切实际的。如何利用功能完善、安全可靠、灵活的方法来 保证网络的最大可用性是目前网络管理中一个迫切问题。网络管理软件则是我解 决这一问题的关键,利用网络管理软件可以统一监控管理全网资源,实现包括全 网故障分析和故障定位、全网性能综合分析、智能化处理等功能的全网的综合管 理,以保证网络高效、可靠地运转。 各个领域的科学技术日新月异地发展,使得企业应用系统的结构越来越复杂 和规模越来越大,企业应用软件的依托于应用服务器,对应用服务器的监控自然 成为网络管理中一个重要组成的部分。服务性能监控的主要目标是观察应用服务 健康状况并启动补救措施以降低服务事故和系统事件的所造成的影响,服务监控 系统提供能够对服务或个别组件进行监控的端对端监控流程,同时,服务监控还 为其它服务管理职能提供资料,从而使其能够实现最佳应用服务的性能。服务监 控这项服务管理职能负责对r r 运算环境健康状况的即时监控与报警,其健康是 指显示成功或失败的可辨识特征。此外,服务监控可能会根据实际情况自动纠正 服务异常状况,业务故障,并在发生服务事故时提高响应能力,从而降低对业务 的影响。 当今的主流应用服务器都实现的是j 舭内核,例如:w 曲s p h e r e ,j b o 昭, w j m o g i c 和t o m c 砒等。它们实现了j m x ( j a 忱m 卸a g c m e me x t e 璐i o n s ) 规范【”。 j 筒,a 管理扩展j m x 是一个为应用程序植入管理功能的框架。实际上,j m x 是一 套标准的代理和服务,用户可以在任何j 哂,a 应用程序中使用这些代理和服务实 现管理。j m x 的前身是j m a p i ,它致力于解决分布式系统管理的问题,因此,能 够适合于各种不同的环境是非常重要的。为了能够利用功能强大的j v a 计算环 境解决这一的问题,s u n 公司扩充了j a 基础类斟7 1 2 9 1 3 0 1 理类库【6 】。它提供应用 编程接口,可扩充对象和方法的集合体,可以用于跨越一系列不同的异构操作系 统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服 浙江大学硕士学位论文第1 章绪论 务管理应用它提供了用户界面指导、j 筒,a 类和开发集成系统、网络及网络管理 应用的规范。它注重于构造管理工具的软件框架,并尽量采用已成熟的技术,并 且可以用来管理网络,设备,应用程序等资源,当前规范为1 2 版本。 由于应用服务器种类繁多,其实现的j m x 架构虽然具有一致性,但因jm :x 允许有不同的实现,所以目前对应用服务器性能监控的软件通用性较差,对监控 的版本也是有一定的范围。 国内外的应用服务性能监控系统普遍存在监控模式单一、监控应用服务版本 不兼容等问题。本文深入分析了j 麟规范,根据j m 】【规范的同一性原则设计和实 现了一个应用服务器的性能监控模型,模型设计过程中,本文参考了国外性能监 控的相关产品,取众家之长,并且补其短,致力于实现的模型的通用性较强,效 率高和安全性能好,最后在实现了基于模型基础上的图形数据表现和通讯的功 能。 1 2 项目背景 在网络管理系统中,网络拓扑发现,安全审计,软件分发,资产管理,服务 性能监控都是其重要的组成部分。网络监控系统主要用于监视并记录网络中的各 类操作行为,实时的综合分析网络中发生的安全事件,并根据设置的规则,智能 地判断出违规行为,并对违规行为进行记录、报警和阻断,可以有效地发现和阻 拦来自网络内部和外部,能够为网络犯罪案件的侦破和取证提供精确、宝贵的辅 助数据。服务性能监控可以了解到网络中的计算机的各种状态,并根据监控的数 据结果来判定企业级应用的工作情况。 1 2 1 性能监控的意义 计算机网络的普及应用己渗透到社会各个层面,给社会带来便利的同时也随 之带来的安全和管理问题。很多企业很舍得对网络以及电脑设备的投入,但却不 舍得对应用软件特别是安全软件投入是不恰当的,如果组建了性能出色的网络以 及购买了现代化的办公设备,但却没被科学地有效地利用,反而降低了工作效率, 甚至导致更大损失;因此网络性能监控非常的必要;因此仅购买设备是不够的, 仅仅建设网站也是不够的,只管理设备也还是不够的,还需要把网络的性能监视 有效地管理起来。 2 浙江大学硕士学位论文 第l 章绪论 当前,对于服务器性能监控的研究正面临诸多挑战,这主要是由于异构分布 式环境的内在复杂性。社会信息化对服务器性能监控提出了更多、更高的要求, 然而传统的应用服务器监控方式远远不能满足信息时代的要求。首先,信息量的 急剧膨胀极大地增加了应用服务器的工作量,而效率底下的传统应用服务器却无 法完成任务,也就无力解决严重的信息污染和信息饥渴等问题。其次,信息时代 的客户群和客户需求发生了很大的变化,他们的需求各式各样,而且要求服务的 质量也大大提高。这些同样是传统应用服务器很难,或者说根本不能办到的。因 此我们需要研制一种可以面临各种服务自适应的新型应用服务器具有自身 的监控功能并且能根据一定规则做出相应的调整的应用服务器。 在应用程序与应用服务器之间共享的j a v a 库,而应用服务器又都在某种程度 上依靠于开源软件,开源软件发布周期通常很快,这导致了应用服务器和应用程 序之间共享的j a v a 库常常出现的软件版本冲突,再加上应用服务器种类繁多,这 给以保证企业应用高可用性为目的的应用服务性能监控领域带来了严峻挑战。 1 2 2 性能监控的国内外发展状况 中国监控行业在二十世纪九十年代末,伴随着计算机技术、图像处理技术和 网络技术的发展普及,兴起了数字化监控浪潮。这股浪潮使自八十年代末期成长 起来的中国安防市场发生了深刻的变化,也为中国新兴的专业监控公司和企业带 来了前所未有的挑战和机遇。目前国内安防市场对网络化的要求还处于初级阶 段。在市场方面,用户需求不够迫切。同时需求理念也不成熟,对联网以后的监 控系统提不出更高、更具体的要求,总的来说市场环境还不够成熟;在产品方面, 虽然目前市场上也有不少支持网络监控的产品,比如网络摄像机,网络视频服务 器,但都存在一个共同的缺点,即在组建大型网络监控系统的能力和组网后综合 管理平台上很少下工夫,产品性能与市场的需求严重脱节。目前的网络监控产品 的主要应用目标是局域网监控,针对广域网的应用还不够完善,产品设计的前瞻 性不够。 网络化监控产品【1 拨展缓慢还有一个原因,就是企业对于网络产品不够重视, 投入力量有限,近年来。国内商家主要把精力放在视频服务器( d v r ) 上。国内 的网络平台还不具备条件,例如,省内银行联网大多采用a d s l ,主要用于点对点, 未能很好的解决动态i p 和交互平台的问题。 3 浙江大学硕士学位论文 第1 章绪论 由于我国目前所使用的计算机操作系统、数据库系统及应用服务器、等应用 软件和网络设备几乎依赖国外产品,企业在监控管理应用上缺乏适合国人应用 习惯的产品。1 9 9 8 年以来,国内各家企业逐渐重视这方面的研究,也开发出了一 些这方面的产品,但是大部分的软件都是针对某个或者某几个特定的应用进行展 开,缺乏统一性的解决方案,应用服务监控并不存在统一监控模型,功能比较单 一,没有提供给用户一个综合的解决方案。国内第一个实现了j m ) ( 1 2 规范的开 源项目j f o x m 】【参考了国内外的相关产品,对其加以理解、综合、优化,然后添 加才进行设计、编码的,它的进步之处在于工作负荷小,效率有所提高。 在国外,由于系统应用方面起步比较早,相对国内来讲,技术成熟很多,但 达到企业级要求的产品还不是很多。比较大的此类系统提供商有艾德威特、美科 利等等公司,他们都有很系统的企业级产品【2 】。他们的这些产品在各个方面都有 自己的特色。应用服务器的监控模块被集成到整个监控系统中,都有一定的不足 之处。艾德威特的产品提供了几乎所有应用服务器监控的一个架构,但就其实现 来说,其监控的应用服务属性种类不够繁多,如果需要更多的监控属性,需要在 它提供的平台进行二次开发。国外开源组织也在这方面大力的发展,例如j m n a g e 是一个基于w e b 和命令行的j m ) ( 客户端。它是一个开源的项目,几乎实现了所有 的应用服务性能监控的功能,但是其存在的问题是并不是对所有应用服务版本都 通用,数据表现形式并不直观,对于非专业人员应用相当困难。比较典型的是 j 嘲n a g e 当前最高版本2 0 实现对w e b s p h e r e4 x 与5 x 的监控,对6 x 却爱莫 能助,而其实现对w e b s p h e r e 监控要求运行在i b m 的j d k 环境中,这个要求使得 其与其他监控系统的集成成了一个技术性的障碍;开源的m ) ( 4 j 项目也存在类似 的问题。也正是因为应用服务器监控系统存在上面的种种问题,本系统根据j m x 规范的同一性原则设计和实现了一个应用服务器通用的性能监控体系结构模型, 力求达到系统监控的通用性、实时性和准确性。 虽然国外产品线比国内的丰富,种类比国内的多,但是就市场而言,远远未 达到饱和。综上所述,服务器性能监控是一个在国内刚刚起步、在国外刚开始发 展的新兴技术。 1 3 开发环境的简介 本系统选用的是e c l i p s e3 2 的i d e 开发平台。e c l i p s e3 2 作为一个功能 非常强大的可视化应用程序开发工具,是计算机界公认的最优秀的应用开发工具 4 浙江大学硕士学位论文 第1 章绪论 之一。 e c l i p s e 是一个开放源代码的、基于j a v a 的可扩展开发平台。就其本身而 言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。e c l i p s e 附 带了一个标准的插件集,包括j a v a 开发工具( j a v ad e v e l o p 舱n tt o o l s ,j d t ) 。 e c l i p s e 是使用j a v a 语言开发的,但它的用途并不限于j a v a 语言;例如,支 持诸如c c + + 、c o b o l 和e i f f e l 等编程语言的插件已经可用,它具有以下优点: ( 1 ) 效率高,可以接触到软件开发最底层的技术; ( 2 ) e c l i s p e 插件很多,凡便构建所需要的开发环境; ( 3 ) j a v a 程序运行在虚拟机之上,与硬件无关的开发环境,可以跨平台运行: ( 4 ) e c l i s p e 是开源的,开发过程中更加灵活。 e c l i p s e 是配合j d k 环境下开发j a v a 程序的,j d k l 5 实现了j m x 规范1 1 。 j f r e e c h a r t 是一个开源的j a v a 项目,它主要用来开发各种各样的图表,这 些图表包括:饼图、柱状图、线图、区域图、分布图,混合图、甘特图以及一些 仪表盘等等。在这些不同式样的图表上可以满足目前商业系统的要求。 j f r e e c h a r t 是一种基j a v a 语言的图表开发技术。在j f r e e c h a r t1 0 3 以上版本 中,实现了s w t 的a p l 支持,这为系统跨平台使用提供了方便的技术条件,s 耵 本身仅仅是e c l i p s e 组织为了开发e c l i p s ei d e 环境所编写的一组底层图形界面 g u i ,用户界面可以随着不同操作系统出现不同的风格,而且性能稳定、技术已经 很成熟。 由于它具有以上的优势,我们数据表现部分用到了j f r e e c h ”t 的插件,用 来处理数据视图。j f r e e c h a r t 提供了j a r 包来实现对项目的支持,本项目中用到 的j f r e e c h a r t1 0 3 存在字体、样式单一的缺点,因此重新改进和编译了它的j a r 包,用来更好地为视图表现提供绘图a p i 。 除了j f r e e c h a r t 本项目还用到s w t 包,用来实现对s w t 界面的支持。s 、t 是由m m 开发的,作为抽象窗口工具包a w t 和s w i n g 的替代品的一种工具包。 m m 的目标是创建一种g u i 工具包,其观感和行为都像是系统中通常的窗口小部 件,并且性能上也具有相同的速度。e d i p 技术概述将s w t 描述为一种“与本 地窗口系统结合但使用操作系统无关的a p i 的窗口小部件集及图形库”。s w t g u i 的程序在不同操作系统上会显示与本操作系统一致的窗口风格,其运行速度 也是比a 孵和s w i i i g 快而且稳定,所以我们选用了s w t 形式的g u l 5 浙江大学硕士学位论文 第2 章j m x 规范及相关原理介绍 第2 章j 姒规范及相关原理介绍 2 1j m x 概述 j m x 是s u n 公司提出的一套管理框架标准。是对j 2 e e 【4 1 5 1 1 9 】标准的扩展, 它定义了完整的框架体系、设计模式、a p i 接口、基于网络的管理和监控服务等, 通过这些可以对j 瓜,a 程序进行管理控制。它定义了管理模型和与外部管理工具 集成的接口、插入和组织管理对象的框架以及装备j 瓜,a 对象的轻量级机制。 j m x 应该说是关于网络应用管理的的框架,如果开发了一个比较复杂的系 统,无疑要提供这个系统的自身管理系统,几乎所有的应用服务器在较高的版本 中,都采用j m x 网络远程管理架构,我们采用这个有效方便的架构,很方便的 就可以在应用程序服务器里搜索管理模块( m b e a 船) 并且通过它们你既可以查询 配置信息又可以查询运行状态的监控信息。此外,通过j m x 还可以用来改变服 务器的配置。事实上,j m x 已在控制台和其他的管理工具上使用着,用来完成它 们的工作和提供报告数据,j m x 规范在越来越多较复杂的系统中得到应用。 2 2 瑚【结构与原理说明 j m x 规范1 2 为最新版本的规科2 8 】,其描述该架构体系分为三层: h l s 咖m e m a t i l c v e l ( 装配层) 、a 窘e n tl c v c i ( 代理层) 和d i s t f i b u t e ds e r v i c e l c v e l ( 分布服务层) 每一层都由不同的组织结构组成,也担负着不同的职责与 功能,j m x 的架构层次上非常清晰明了,这给各个应用服务器或j m x 产品一致 接口的开发带来了技术上的同一性,也为应用系统的对接提供了清晰的透明接 口。 下面是s 岫公司j m x 规范的架构图: 6 浙江大学硕士学位论文第2 章j m x 规范及相关原理介绍 筒真是 叵司目曲器 d 州埘。弋l、 k 喇 艄呐一豳南面 、盈 螂 曙翠、 - w d i _ _ t _ - _ _ 曲 气嚣函卤气嚣。赫擞 嘲 1 w 哇蹦担8 圈2 1j m x 规范的架构图 一装配层( h l s t m m e n t a t i o nk v c l ) 装配层提供了可管理资源的规范。所谓可管理资源可以是一个j a v a 应用程 序、一种实现的服务。它依赖于j a m 技术或者被j 越,a 技术包装起来,并且 它就像一种工具可以被j m x 管理框架来管理和控制。装配层的可管理资源通过 代理层去管理。装配层还提供了特别的消息( n 0 t m c a t i 衄) 机制。这种机制允许 m b e 柚s 发送异步消息到其他层的组件,实现了通讯功能。 在j m x 规范中,管理构件定义如下:它是一个能代表管理资源的j a 、,a 对象, 遵从一定的设计模式,还需实现该规范定义的特定的接口。该定义了保证了所有 的管理构件以一种标准的方式来表示被管理资源。 管理接口就是被管理资源暴露出的一些信息,通过对这些信息的修改就能控 制被管理资源。一个管理构件的管理接口包括:能被接触的属性值;能够执行的 操作;能发出的通知事件;管理构件的构建器。 管理构件【8 j 通过公共的方法以及遵从特定的设计模式封装了属性和操作,以 便暴露给管理应用程序。j m x 定义了四种管理构件:标准、动态、开放和模型管 理构件,每一种管理构件可以根据不同的环境需要进行制定。 ( 1 ) 标准管理构件。准管理构件的设计和实现是最简单的,它们的管理接口 通过方法名来描述。标准管理构件的实现依靠一组命名规则,称之为设计模式。 ( 2 ) 动态管理构件。动态管理构件提供了更大的灵活性,它可以在运行期暴 露自己的管理接口。它的实现是通过实现一个特定的接口动态m b e 姐。 ( 3 ) 开放管理构件。开放管理构件是一种专门化的动态管理构件,其中所有 7 浙江大学硕士学位论文第2 章j m x 规范及相关原理介绍 的与该管理构件相关的参数、返回类型和属性都围绕一组预定义的数据类型 ( 蹦n g 、i n t e g 盯等) 来建立,并且通过一组特定的接口来进行自我描述。 ( 4 ) 模型管理构件。模型管理构件也是一种专门化的动态管理构件。它是预 制的、通用的和动态的m b c 蛆类,已经包含了所有必要缺省行为的实现,并允 许在运行时添加或覆盖需要定制的那些实现。 一代理层( a g e n t l 胛c 1 ) 代理层提供了j m x 规格说明中定义的代理【9 】。通过它能够直接管理、监控 应用程序的所有资源;代理通常被安装在同一台机器上来管理所有资源,实际上 在不同的机器一样可以管理监控;代理层构筑在装配层之上,它定义了一套标准 的代理去管理所有资源;标准的j m x 代理由m b c 蛆服务器和一组被管理的 m b e 卸组成。b 伽服务器为代理层的核心,设备层的所有管理构件都在其注册, 管理者只用通过它才能访问管理构件。管理构件可以通过以下三种方法实例化 和注册:通过另一个管理构件、管理代理本身和远程应用程序 注册一个管理构件时,必须提供一个唯一的对象名。管理应用程序用这个对 象名进行标识管理构件并对其操作。这些操作包括: ( 1 ) 发现管理构件的管理接口 ( 2 ) 读写属性值 ( 3 ) 执行管理构件中定义的操作 ( 4 ) 获得管理构件发出的通告 ( 5 ) 基于对象名和属性值来查询管理构件 代理层还提供了协议适配器和标准的连接器,使得不在a g c n t 的j v m 上的分 布式管理应用可以访问。m b c 牡服务器依赖于协议适配器和连接器来和运行该代 理的j a 淞虚拟机之外的管理应用程序进行通信。协议适配器通过特定的协议提 供了一张注册在m b e 姐服务器的管理构件的视图。例如,一个i r 瞰l 适配器可 以将所有注册过的管理构件显示在w 曲页面上。不同的协议,提供不同的视图。 适配器和连接器使m b 锄服务器与管理应用程序能进行通信。因此,一个代 理要被管理,它必须提供至少一个协议适配器或者连接器。面临多种管理应用时, 代理可以包含各种不同的协议适配器和连接器。 当前已经实现和将要实现的协议适配器和连接器包括: ( 1 ) r m i 连接器 ( 2 ) s n m p 协议适配器 8 浙江大学硕士学位论文第2 章j m x 规范及相关原理介绍 ( 3 ) o p 协议适配器 ( 4 ) h 咖l 协议适配器 ( 5 ) h 兀甲连接器 分布服务层( d i s t r i b i l t e ds e n r i c cl c v c l ) 提供了管理组件的实现它可以作为管理者或管理代理通过a g c n t 层操纵分布式 管理服务,但在目前的j m x 规范中,只讲述了前两部分,分布式服务并没有详细阐 述,j m x 规范还在不断完善中。 2 3j 坂通知模型描述 一个管理构件提供的管理接口允许代理对其管理资源进行控制和配置。然而, 对管理复杂的分布式系统来说,这些接口只是提供了一部分功能。通常,管理应用 程序需要对状态变化或者当特别情况发生变化时作出反映。 为此,j m x 定义了通知模型。通知模型仅仅涉及了在同一个j m x 代理中的管 理构件之间的事件传播。j m x 通知模型依靠以下几个部分: ( 1 ) n o t i f i t i o n ,一个通用的事件类型,该类标识事件的类型,可以被直接使用, 也可以根据传递的事件的需要而被扩展。 ( 2 ) n b t i f i c a t i o n l i s t e n e f 接口,接受通知的对象需实现此接口。 ( 3 ) n 0 l i f i c a t i o n f i l t e r 接口,作为通知过滤器的对象需实现此接口,为通知监听者 提供了一个过滤通知的过滤器。 ( 4 ) n 鲥丘c a t i o n b r o a d c a s t 盱接口,通知发送者需实现此接口,该接口允许希望得 到通知的监听者注册。 发送一个通用类型的通知,任何一个监听者都会得到该通知。因此,监听者需 提供过滤器来选择所需要接受的通知。任何类型的管理构件,标准的或动态的,都 可以作为一个通知发送者,也可以作为一个通知监听者,或两者都可以是。 2 4 删i 、j n d i 和j 从s 介绍 r m i 远程方法调用r m l ( r e m o t em e t h o dh o c a i i ) 【1 2 1 2 7 i 划是用j a m 在j d k 中 实现的,它大大增强了j 烈,a 开发分布式应用的能力。r m i 是开发百分之百纯j v a 的网络分布式应用系统的核心解决方案之一。j 瓜,ar m l 支持存储于不同地址空间 9 浙江大学硕士学位论文 第2 章j m x 规范及相关原理介绍 的程序级对象之间彼此进行通信,实现远程对象之间的无缝远程调用。 r m i 目前使用j v a 远程消息交换协议j r m p ( j m ,a r 锄o t cm e 鼹a g i n gp r o t d c 0 1 ) 进行通信。j r m p 是专为j 越,a 的远程对象制定的协议。但由于j r m p 是专为j 越,a 对象制定的,因此,r m i 对于用非j a 姒语言开发的应用系统的支持不足,不能与 用非l 瓜,a 语言书写的对象进行通信。r m i 为采用j a v a 对象的分布式计算提供了 简单而直接的途径。j 越,a 体现了“编写一次就能在任何地方运行”的模式。r m i 系统结构,在客户端和服务器端都有几层结构: 图2 - 2r m l 客户端和服务端层结构图 方法调用从客户对象经占位程序( s t l l b ) 、远程引用层限e m o t cr e f c 咖c cl a y c r ) 和传输层( t r 札s p o r th y e r ) 向下,传递给主机,然后再次经传输层,向上穿过远 程调用层和骨干网( s k e l e l o n ) ,到达服务器对象。占位程序扮演着远程服务器对象 的代理的角色,使该对象可被客户激活。远程引用层处理语义、管理单一或多重对 象的通信,决定调用是应发往一个服务器还是多个。传输层管理实际的连接,并且 追追踪可以接受方法调用的远程对象。服务器端的骨干网完成对服务器对象实际的 方法调用,并获取返回值。返回值向下经远程引用层、服务器端的传输层传递回客 户端,再向上经传输层和远程调用层返回,最后,占位程序获得返回值。 j n d i r m i 对象却是使用命名服务来查找的。j n d i 全称j a v an 锄i n g 柚dd i r e c t o r y i n t e 嘲c e ,是j a v a 平台的一个标准扩展,提供了一组接口、类和关于命名空间的概 念。如同其它很多j a v a 技术一样,j d n i 暴露了一个a _ p i 和一个服务供应接口( s p l ) 。 这意味着任何基于名字的技术都能通过j n d i 而提供服务,只要j n d l 支持这项技术, j n d l 目前所支持的技术包括u a p 、r m i 、n d s 、d n s 、w i n d o w s 注册表等等。j n d i 的体系结构就是j 2 e e 的查找服务模型,如下图所示: 浙江大学硕士学位论文第2 章j m x 规范及相关原理介绍 图2 - 3 j n d i 体系结构 其中,j n d i a _ p i 向应用程序提供访问命名和目录服务的统一接口;而j n d ls p i 是查找服务提供商必须实现的接口,它想应用编程人员为透明的接口,命名管理器 用来管理j n d is p i 的实现。 j d n i 通过绑定的概念将对象和名称联系起来,用来定位分布式对象,在目录服 务中,一个对象名被绑定给一个对象实体。例如:在一个文件系统中,文件名被绑 定给文件;在d n s 中,一个口地址绑定一个u r l o j a a s j a v a 认证和授权服务( j a v aa u t h e n t i c a t i o na n da u t h o r i z a t i o ns e r v i c e , j 从s ) 【1 3 1 1 4 】是对j a v a2s d k 的扩展。在j 从s 下,可以给予用户或服务特定的 许可权来执行j a v a 类中的代码。j a v as d k1 4 2 以上版本中已经实现了j 从s 机制。 安全性是所有可以用来对资源进行保护和验证的机制。j 从s 通过一个配置文 件来定义认证机制,而根本不需要使用任何代码。认证机制之所以需要参数是为 了确定用户的身份。用来对用户进行认证的参数,例如每种认证机制中使用的用 户名和口令,都称为验证信息。 j 从s 框架对由配置文件指定的认证模块进行了包装。如果认证成功,就会返 回一个包含验证信息的对象,认证机制所返回的这个验证信息会用于授权过程, 验证失败抛出一个异常。通过在应用程序和底层的验证和授权机制之间加入一个 抽象层,j 从s 可以简化涉及到j a v as e c u r i t y 包的程序开发。抽象层独立于平台 的特性使开发人员可以使用各种不同的安全机制,而且不用修改应用程序级的代 码。和其他j a v as e c u r i t ya p i 相似,j a a s 通过一个可扩展的框架:服务提供者 接口( s e r v i c ep r o v i d e ri n t e r f a c e ,s p i ) 来保证程序独立于安全机制。服务 浙江大学硕士学位论文第2 章j m x 规范及相关原理介绍 提供者接口是由一组抽象类和接口组成的,j 从s 程序的整体框架图如下所示: 圈目目圉 图2 4 j s 整体框架图 应用程序层的代码只需要和l o g i n c o n t e x t 进行交互。在l o g i n c o n t e x t 之下是 一组动态配置的l o g i n m o d u l e 对象,这些对象使用相关的安全基础结构进行验证操 作。 j 从s 主要由以下四个部分组成: ( 1 ) j a v 缸s e c i l i i t y 栅t h 含j a a s 框架需要的基本类; ( 2 ) j a v 强s e c i l r i t y 甜t h 1 0 9 i n 支持可插入认证的类; ( 3 ) j a y 缸s e c l l i :i t y a u t h c a h b a c k 不同的回调类与接口; ( 4 ) j a v 驭s c c i i i i t y a u t h s p i 登录模块的接口。 j 从s 认证功能由登录上下文、登录模块、回调处理器、回调以及配置文件实现。 2 5 应用服务器实现原理 随着计算机网络在社会各个方面的发展,分布在不同节点应用程序面临通信、 协作和安全的问题,由此而发展起来的应用服务器在网络软件生存和发展上起到了 及其重要的作用;应用服务器【捌的设计充分提取软件的共性的成分,并且向高层屏 蔽了底层的复杂度,保持应用系统的复杂度降低,从而也增加了其安全性和稳定性; 应用服务器位于应用系统与操作系统之间,它向应用系统抽象了操作系统的底层设 计,简化了应用系统的复杂度;应用服务器被认为是继操作系统、数据库管理系统 浙江大学硕士学位论文第2 章j m k 规范及相关原理介绍 之后,随着计算机网络环境的发展而出现的里程碑式的基础软件。 虽然目前各应用服务器开发商已经实现的应用服务器都各自有自己的特色,但 归纳起来它们有三个方面的共性功能:提供构件运行环境、提供互操作机制和提供 公共服务。其结构与边界如下图所示: 图2 - 5 应用服务器结构与边界图 应用服务器通过构件器为构件提供基本的运行环境;并且为分布性、异构性的 构件之间提供互操作的通信服务;提供查找服务、事务服务和安全服务公共服务以 及业务领域密切相关的公共服务等。 构件容器 应用服务器是通过构件容器来对大量构件实例进行有效管理和提高资源高利 用率的,它所依赖的主要机制为实例池、冻化和活化。实例池的原理跟数据库连接 池设计的原理是一致的,核心思想就是把暂时不用的实例资源保存起来,等客户需 要用时从池中取出直接去用,这提高了资源的可利用性和系统的运行效率。而构件 选取策略可以为先进先出( f i f o ) 可以是后进先出( l i f o 的机制。 应用服务器的容器大多采用最近最少使用( l r u ) 的原则,冻化那些最近最少 调用的构件,冻化就是挂起的过程,当客户需要选取构件时,再把它活化,而活化 就是恢复其可运行状态。冻化与活化的过程实际上是通过序列化方法实现的。 软件互操作 几乎所有的操作系统都将t c p i p 作为默认网络软件库的实现协议。s o c k e t 是基于t c p i p 协议的应用程序之间相互通信机制之一,当然也存在其他的机制, 例如:远程过程调用( r p c ) 和对象请求代理( o r b ) 【删。但我们实现的系统本 身采用的是s o c k c t 机制,所以重点介绍下这种机制。 浙江大学硕士学位论文第2 章j 规范及相关原理介绍 客户、服务器通信过程如下图所示: 图2 6 软件互操作客户与服务器通信过程图 s o c k e t 分为客户方和服务方,在客户方呼叫连接之前,它要明确服务方所在 机器的i p 地址或者机器名称,并且客户方和服务方有一个约定端口号。客户方可 以通过服务方所在机器的i p 地址或者机器名称和端口号唯一的确定所呼叫的服 务方。服务方必须处于侦听状态,用于侦听是否有客户要求建立连接。一旦服务 方收到来自客户方的连接请求,那么,服务方可以根据需要接受连接或者拒绝连 接。服务方接受连接之后,会通知客户方,表示连接建立。客户方可以发送消息 给服务方,这里的消息可以是文本,也可以是二迸制信息流,当客户方的消息到 达服务方端口的时,自动触发一个事件。服务方接管该事件,就接受来自客户方 的消息。 公共服务 应用服务器的公共服务是为多个应用程序提供服务并且独立于具体应用系 统的共性软件部分。公共服务【1 1 1 处于系统层,其实现是独立于具体应用的,是应 用服务器开发商实现的一种服务;公共服务实现了构件管理的约束性需求;公共 服务对外表现为接口的形式,应用构件通过某种规定的形式调用公共服务的功 能。 应用服务器包含许多的公共服务,这些公共服务实现的方式有很多种。即可 以在应用服务器内部实现,也可以由另外一个单独的中间件实现。公共服务最早 1 4 浙江大学硕士学位论文 第2 章j m x 规范及相关原理介绍 的定义是对象服务( 0 ) ,m 一1 5 1 到目前为止已经发布了近2 0 个公共服务规范, 应用服务器主要涉及到的规范主要有命名服务、生命周期服务、事件服务、持久 服务、关系服务、事务服务、安
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年及未来5年中国服装纺织电子商务市场竞争格局及投资战略规划报告
- 2025年及未来5年中国楼宇自控系统行业市场调研分析及投资战略咨询报告
- 2025年及未来5年中国保湿鲜米粉行业发展前景预测及投资战略研究报告
- 贵州企业招聘2025贵州芽豆科技有限公司招聘笔试历年常考点试题专练附带答案详解试卷2套
- 2025黑龙江大兴安岭林业集团公司招聘岗位和缩减岗位笔试历年常考点试题专练附带答案详解2卷
- 2025辽宁锦城石化有限公司经理层成员拟聘人员笔试历年常考点试题专练附带答案详解试卷2套
- 2025秋季内蒙古新城宾馆旅游业集团有限责任公司员工招聘8人笔试历年常考点试题专练附带答案详解试卷2套
- 2025福建福州城市泊车管理有限公司招聘2人笔试历年难易错考点试卷带答案解析试卷2套
- 2025浙江宁波慈溪市四海资产经营公司公开招聘5人笔试历年典型考点题库附带答案详解试卷2套
- 2025东风卓联汽车服务有限公司招聘1人笔试历年典型考点题库附带答案详解试卷2套
- 6S检查表标准版2行业资料国内外标准规范
- 青少年心理健康教育课件
- 汽车吊机支腿反力计算及梁板受力分析
- 第十四章基因的表达与调控
- 水库大坝安全评价导则
- 点的立体构成
- 《格萨尔王传研究开题报告文献综述》
- 阅读推荐课《不老泉》课件
- 护士长医院感染管理知识培训正式完整版课件
- 危大工程验收记录表(模板工程)
- 风功率预测系统及测风塔专项检查表
评论
0/150
提交评论