




已阅读5页,还剩57页未读, 继续免费阅读
(信号与信息处理专业论文)smart+client技术在分布式系统中的应用研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉理一l :大学硕士学位论文 摘要 社会的需求推动了技术的进步,应用程序的构建、部署和运用方式也是如 此。p c 出现后,应用程序的架构采用的是客户端服务器( c s ) 模式,也称为 胖客户端模式( r i c hc l i e n t ) 。随着i n t e r n e t 的出现和发展,又出现了一种应用 程序的架构方式浏览器服务器( b s ) 模式,也称为瘦客户端模式( t h i n c l i e n t ) 。但是,这两种模式赧有其优点和缺点,不是完美的。存不存在一种能 够有效地将两者的优势集中起来的技术方法昵? 答案是肯定的。随着n e t 平台 的发布,出现了智能客户端( s m a r t c l i e n t ) 这种全新的客户端服务器应用模式, 它将胖客户端模式的强大功能和灵活性与瘦客户端的易部署性和稳定性结合了 起来。 智能客户端可以为用户提供内容丰富且响应迅速的用户界面,提供脱机工 作的能力,并且充分利用本地硬件和软件资源,从而为客户提供快速响应的和 丰富的交互式体验。在b s 与c s 架构争论不休的今天,智能客户端技术的提 出给人们带来了新的希望与选择。 一个智能客户端应该具有下列部分或全部特征:充分利用本地资源、支持 离线服务功能、提供智能安装和更新、使用w e bs e r v i c e ,提供客户端设备灵活 性。经过设计,智能客户端程序可以设计在各种客户端设备上运行,包括桌面 p c 、便携式p c 及手持移动设备( 如p o c k e tp c 和智能手机) 。 本文前几章主要介绍了智能客户端技术思想的概念以及n e tf r a m e w o r k 环境下实现智能客户端模式需要的几项关键技术,接着描述了在设计和实现智 能客户端应用程序时面i 临的体系结构和设计方面的难题,以及作者根据智能客 户端的一些主要思想提出其在n e t f r a m e w o r k 下的具体实现方法和思路,其中 的若干思想与方法可为解决目前智能客户端应用所存在的问题提供借鉴和帮 助。本课题采用x m l w e bs e r v i c e 技术、n e t 框架提供的装配件解决方案和新 的程序部署方式智能客户端应用程序模式开发图书共享管理系统,通过这 个系统讨论如何设计与实现智能客户端架构方式的分布式应用程序,详细阐述 了智能客户端技术的特点和优势及其在分布式系统中的应用。 关键词:智能客户端,胖客户端,瘦客户端,w e b 服务,n e t 框架 武汉理上火学硕士学位论文 a b s t r a c t s o c i e t y sd e m a n di m p e l l e dt h ep r o g r e s so ft e c h n o l o g y ,a n di ta l s oi m p e l l e dt h e a r c h i t e c t u r e ,t h ed e p l o y m e n ta n dt h eu t i l i z a t i o nw a yo fa p p l i c a t i o np r o c e d u r e a f t e r p ca p p e a r s ,t h ea r c h i t e c t u r eo ft h ea p p l i c a t i o np r o c e d u r ea l s ou s e st h ec l i e n t s e r v e r ( c s ) m o d e l ,w h i c hi sa l s oc a l l e dt h e r i c hc l i e n tm o d e l a st h ea p p e a r a n c ea n d d e v e l o p m e n to fi n t e r n e t ,an e wk i n do fa p p l i c a t i o np r o c e d u r ea r c h i t e c t u r ea p p e a r s - 一 b r o w s e r s e r v e r ( b s ) m o d e l ,w h i c hi sa l s oc a l l e dt h et h i nc l i e n tm o d e l b u tt h et w o k i n do fm o d e l sb o t hh a v et h e i ra d v a n t a g e sa n ds h o r t c o m i n g s t h e ya r en o tp e r f e c t i st h e r eat e c h n o l o g yo rm e t h o dw h i c hc o u l de f f e c t i v e l yc o m b i n et h es u p e r i o r i t yo f t h et w ok i n do fm o d e l s ? t h ea r l s w e ri ss u r e l y w 曲n e tp l a t f o r mi s s u e s m a r t c l i e n tm o d e la p p e a r s i ti san e wt y p ec l i e n t s e r v e ra p p l i c a t i o nm o d e l i tc o m b i n e s a l lt h ep o w e r ,f l e x i b i l i t y ,a n dg r e a tu s e re x p e r i e n c eo ft h er i c hc l i e n ta p p l i c a t i o n m o d e lw i t ht h ee a s eo f d e p l o y m e n ta n ds t a b i l i t yo f t h i nc l i e n ta p p l i c a t i o nm o d e l s m a r tc l i e n ta p p l i c a t i o n sa r eap o w e r f u la l t e r n a t i v et ot h i nc l i e n ta p p l i c a t i o n s t h e yc a nb ed e s i g n e dt oc o m b i n et h eb e n e f i t so ft h er i c hc l i e n ta p p l i c a t i o na n dt h e t h i nc l i e n ta p p l i c a t i o n t h e yc a np r o v i d eu s e r sw i t har i c ha n dr e s p o n s i v eu s e r i n t e r f a c e ,t h ea b i l i t yt ow o r ko f f l i n e ,a n daw a yt ot a k ea d v a n t a g eo fl o c a lh a r d w a r e a n ds o f t w a r er e s o u r c e s ,a n dt h e np r o v i d eu s e r sar i c ha n dq u i c ka l t e m a t i v e l y e x p e r i e n c e t h es m a r tc l i e n tt e c h n o l o g yg i v e sn e we x p e c t a t i o na n ds e l e c t i o n st o p e o p l ei nt h i st i m et h a tb sa n dc sa r ea r g u i n gt oe a c ho t h e r o n es m a r tc l i e n ta p p l i c a t i o ns h o u l dh a v ep a r to fo ra l lo ft h ef o l l o w i n g c h a r a c t e r s :m a k i n gt h eb e s to ft h el o c a lr e s o u r c e ,s u p p o r to f f i i n ew o r k ,s u p p o r t i n t e l l i g e n ti n s t a l l m e n ta n du p d a t i n g ,u s i n gw e bs e r v i c e ,a n dp r o v i d ec l i e n td e v i c e f l e x i b i l i t y t h e y c a nb ed e s i g n e dt or u no na b r o a ds p e c t r u mo fc l i e n td e v i c e s , i n c l u d i n gd e s k t o pp c s ,t a b l e tp c s ,a n dh a n d h e l dm o b i l ed e v i c e ss u c ha sp o c k e t p c sa n ds m a r tp h o n e s i nt h ef i r s ts e v e r a lc h a p t e r so ft h i st h e s i s ,i tm a i n l yd i s c u s s e st h ec o n c e p t i o no f s m a r tc l i e n t ,a n dt h ek e yt e c h n o l o g yn e e d e dt oi m p l e m e n ts m a r tc l i e n ti n t or e a l a p p l i c a t i o nu n d e rt h e n e tf r a m e w o r ke n v i r o n m e n t ,a n dt h e nd e s c r i b e st h ed i f f i c u l t l j 武汉理j l = 大学硕士学位论文 p o i n t so fa r c h i t e c t u r a lc h a l l e n g e sa n dd e s i g ni s s u e sw h e nw ed e s i g n i n ga n db u i l d i n g s m a r tc l i e n ts o l u t i o n s s o m ei d e a sa n dm e t h o d sc a nb eu s e df o rr e f e r e n c ea n db e u s e f u lt os o l v et h ep r o b l e m st h a tt h es m a r tc l i e n ta p p l i c a t i o nf a c e dn o w , t h e s u b j e c t su s i n gx m lw e bs e r v i c et e c h n o l o g y , t h es o l u t i o n sa n dt h en e wa p p l i c a t i o n p r o c e d u r ea r c h i t e c t u r em o d e l s m a r tc l i e n tw h i c h n e tf r a m e w o r kp r o v i d e s d e v e l o p b o o ks h a r i n gm a n a g e m e n ts y s t e m a c c o r d i n gt ot h i ss y s t e m ,a u t h o r d i s c u s s e sh o wt od e s i g na n di m p l e m e n tt h es m a r tc l i e n ta p p l i c a t i o nm o d e la n d e x p l a i n st h ec h a r a c t e r i s t i c sa n da d v a n t a g e so ft h es m a r tc l i e n tt e c h n o l o g ya n di t s a p p l i c a t i o n si nt h ed i s t r i b u t e ds y s t e m k e y w o r d s :s m a r tc l i e n t ,r i c hc l i e n t ,t h i nc l i e n t ,w e bs e r v i c e ,n e tf r a m e w o r k 1 1 1 此页若属实请申请人及导师签名。 独创性声明 本人声明,所呈交的论文是我个人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢 的地方外,论文中不包含其他人已经发表或撰写过的研究成果, 也不包含为获得武汉理工大学或其它教育机构的学位或证书而使 用过的材料。与我一同工作的同志对本研究所做的任何贡献均已 在论文中作了明确的说明并表示了谢意。 研究生签名: 关于论文使用授权的说明 本人完全了解武汉理工大学有关保留、使用学位论文的规定, 即:学校有权保留送交论文的复印件,允许论文被查阅和借阅: 学校可以公布论文的全部内容,可以采用影印、缩印或其他复制 手段保存论文。 ( 保密的论文在解密后应遵守此规定) 研究生签名:堡! 坠重:导师签名 注:请将此声明装订在学位论文的目录前。 日期却7 i 3 1 1 课题研究背景 第1 章引言 在软件开发历程中,软件系统架构设计一直起着关键的作用。对于规模较 大的企业级应用而言,系统架构不仅会影响到系统设计和开发的进度,也会直 接影响到系统的后续发展潜力,甚至会决定整个系统开发的成败。 传统的客户端服务器( c l i e n t s e r v e r ) 体系结构流行已久,它曾经是一种 成功的企业应用解决方案。c s 模式也被形象的称为胖客户端模式,采用这种 架构方式的应用程序客户端体现界面层和业务逻辑层,服务器通常只是中心交 换的数据库,它充分利用客户端资源,减轻服务器压力,如不需要交换数据, 程序可以离线运行,由于时序传输数据,网络传输量较小,而且用户界面丰富、 灵活。但它也有其不可避免的缺点。c s 模式部署程序非常繁琐,必须为每一 个客户端修改注册表、更新组件、改变配置文件等,如果更新不当,还会导致 整个程序无法正常运行。 但是自2 0 世纪9 0 年代以来,由于i n t e m e t 的迅猛发展以及i n t c r a e t 技术的 广泛发展,特别是w e b 及相关技术的发展,传统的c s 模型已经明显不能适应 企业应用的发展要求。这个时候,软件系统架构出现了一种基于i n t e r a c t 的新 模式浏览器服务器( b r o w s e r s e r v e r ) 模式,我们也把这种模式称为首客 户端模式。采用这种模式的应用程序因其安装维护的简单性以及与客户端的无 关性而得到应用程序开发人员的青睐。它把数据层、业务逻辑层等组件都集中 于服务器,客户端只需要浏览器,部署方便、跨平台性是其显著优点,只需要 服务器组件更新,客户端立刻享受到最新版本,无须卸掉旧版本更换新版本。 但它也存在缺点:服务器压力重而客户端资源闲置;程序不能离线运行;浏览 器运行的安全级别低,使程序功能受到很大限制。【l 如何将基于浏览器模式和桌面应用程序二者的优点结合起来开发应用程序 一直是开发人员的难题,而智能客户端( s m a r tc l i e n t ) 模式的出现,正好解决 了这个问题,给软件开发人员提供了第三种软件系统架构方式的选择。智能客 户端作为m i c r o s o f t n e t 平台的一个特性而被提出,其目的是为了整合w i n d o w s 和i n t e m e t 。s m a r tc l i e n t ,简而言之就是一种可扩展的能集成不同应用的桌面应 武汉理工大学硕士学位论文 用程序:它可以无接触部署、即需安装、动态加载,可以动态升级、自动更新, 可以方便的经w e b 运行而不用担心防火墙问题并可以方便的离线运行,方便的 连接w e bs e r v i c e 。 1 2 研究内容及研究意义 作为微软n e t 战略发布之后的一个新理念,智能客户端( s m a r tc l i e n t ) 已经成为支撑无缝计算的基础所在。智能客户端是一个连接互联网的设备,允 许用户本地应用程序通过w e b 服务和服务器应用程序交互,从而结合了胖客户 端应用程序的丰富特性和瘦客户端应用程序的易于部署和可以管理的特性,能 够为用户提供更加高效和丰富的应用。例如,运行文字处理程序的智能客户端 可以通过网络和远程数据库交互,从数据库获取文档处理需要使用的数据;运 行w i n d o w sm o b i l e 的智能手机可以从网络上获取相关图书的信息,可以获取天 气预报。要获得这些功能,不需要其它设备,只需要这些终端拥有网络连接和 后台的w e b 服务。 虽然智能客户端这个概念对大多数人还有些陌生,但是越来多的软件部署 正在加入到这个阵营中来, w i n d o w sx p 、w i n d o w s2 0 0 0 或者w i n d o w s2 0 0 3 的 系统更新就是智能客户端的应用。在下一代称为l o n g h o m 的w i n d o w s 操作平 台上,智能客户端将会成为程序部署的主要方式,它和w i n f s 、a v a l o n 、i n d r i g o 并列,被称为l o n g h o r n 最大的特色之一。因此,在未来几年里智能客户端将成 为应用开发的主流架构。这也正是对智能客户端这种新的软件系统架构方式进 行深入研究的意义所在。 2 1 本课题主要的研究内容有以下几点: ( 1 ) n e t 框架的相关技术 n e tf r a m e w o r k 具有两个主要组件:通用语言运行时( c o m m o nl a n g u a g e r u n t i m e ,简称c l r ) 和n e t 框架类库( c l a s sl i b r a r y ,简称c l ) 。 ( 2 ) 软件系统架构的三种方式 软件系统架构的三种方式:胖客户端模式,瘦客户端模式和智能客户端模 式。通过比较前两种架构模式的优缺点,引出智能客户端的特性。 ( 3 ) x m l w 曲s e r v i c e x m lw e bs e r v i c e 是下一代分布式应用系统的关键技术,也是实现智能客 2 亟堡墨三盔堂塑主望焦丝塞 户端模式的技术基础。在本课题中研究了w e bs e r v i c e 体系结构和调用机制, 还有它的一些关键技术。 1 3 论文结构 本文的结构安排如下: 第l 章总体介绍了论文的立题背景、研究内容及研究意义; 第2 章简要介绍了s m a r tc l i e n t 的概念、分类以及智能客户端的特征; 第3 章讲述了在n e tf r a m e w o r k 下开发s m a r tc l i e n t 程序要用到的的几项 关键技术,包括对n e tf r a m e w o r k 框架的介绍、利用a d o n e t 进行数据的访 问技术、x m lw e bs e r v i c e 几项关键技术。 第4 章详细论述了在n e t 环境下开发智能客户端程序存在的几个关键问 题及其对应的解决方案。包括处理数据、建立连接、如何创建偶尔连接的智能 客户端、智能客户端的部署和更新、安全性考虑、多线程的处理等方面目前存 在的问题以及针对各自的问题提出解决办法。 第5 章介绍了根据对s m a r tc l i e m 技术的研究,设计并实现一个智能客户 端架构的分布式应用系统图书共享管理系统。 3 第2 章智能客户端概述 本章通过从分析比较目前主流的两种软件架构技术入手,分别总结了它们 各自的优缺点,进而引出了智能客户端( s m a r t c l i e n t ) 技术的概念与特征,并 介绍了智能客户端的分类,为后面章节进一步论述智能客户端技术进行了概念 及相关知识的铺垫。 2 1 智能客户端定义 要完全了解智能客户端以及它如何将胖客户端与瘦客户端的优点结合起 来,需要从胖客户端和瘦客户端应用程序模型背后的历史和基础原理开始。 2 1 1 胖客户端应用程序 所谓的胖客户端应用程序( r i c hc l i e n t ) ,就是使用客户端服务器端( c s ) 的应用程序。胖客户端模式将应用程序处理分成两部分:一部分由用户的桌面 计算机执行,另一部分由一个集中的服务器执行。一个典型的胖客户端包含一 个或多个在用户的计算机上运行的应用程序,用户可以利用该应用程序来查看 并操作数据、处理一些或所有的业务规则,胖客户端同时提供一个用户界面及 时对用户的操作做出响应。服务器负责管理对数据的访问并负责执行一些或所 有的业务规则。这种模式的重点是,胖客户端应用程序是在用户的计算机上运 行的。1 3 1 2 0 世纪9 0 年代中期,在w i n d o w s 操作系统上开发的胖客户端应用程序的 数量急剧增长,因为这样可以充分利用本地硬件资源以及客户端操作系统平台 的功能,但它们还是具有一些局限性。 首先,许多应用程序是独立的并且在客户计算机上工作。对其他计算机和 网络上的任何服务或者用户计算机上的其他应用程序所知甚少或一无所知,如 应用程序之间的集成只局限于使用w i n d o w s 提供的剪贴板在应用程序之间传 输少量的数据。 其次,虽然胖客户端比瘦客户端响应速度更为迅速,质量更高,但是它最 大的缺点就是难于部署和维护,因为胖客户端的应用程序都是安装在客户的计 4 亟堡墨王盔堂塑堂鱼迨窒 算机上的,当有最新版本时,并非所有的客户端都会马上更新到最新的版本。 随着应用程序和客户端平台的复杂性不断增加,以可靠且安全的方式将应用程 序部属到客户计算机的难度也将不断的增加。特别是部署了不兼容的共享组件 或软件库,则很有可能会发生应用程序之间的冲突,一个应用程序会很容易的 破坏另一个应用程序,这种现象称为“应用程序脆弱性”。通常,新版本的应用 程序有可能会重新部署整个应用程序,这可能使应用程序脆弱性问题变得更加 严重。 2 1 2 瘦客户端应用程序 瘦客户端( n i i i lc l i e n t ) 应用程序也就是浏览器服务器( b s ) 的应用程序 解决了胖客户端存在的与应用程序部署和维护相关联的问题。通常意义上的瘦 客户端应用程序是指基于浏览器的应用程序,也就是w e b 应用程序,常用的例 子是用a s p 、j s p 或a s e n e t 等w e b 服务器端脚本再加上j a v a s c d p t 或v bs c r i p t 等客户端脚本实现。由于基于浏览器的瘦客户端应用程序的安装和部署是在 w e b 服务器上进行的,因此,它每次使用的应用程序都将是最新版本的。 3 1 但瘦客户端应用程序也有其无法弥补的一些缺点。 首先,浏览器必须总与网络相连。这意味着在断开连接时将无法访问应用 程序,当再次连接网络的时候,必须重新输入数据。 第二,瘦客户端应用程序的大部分逻辑和状态都位于服务器上,瘦客户端 需要频繁地向服务器发送数据和处理请求;浏览器必须等待响应到达,然后用 户才能继续使用该应用程序。因此,该应用程序的响应速度通常要比庞客户端 应用程序慢的多,特别是在要求输入大量数据以及在多个窗口中频繁使用应用 程序时尤其会受到这一问题的影响。 第三,它对客户端的分布处理能力很有限,常用的应用程序功能( 如拖放、 撤消、重复以及上下文相关帮助) 可能不可用,通过编写客户端脚本、a p p l e t $ 和从服务器下载的嵌入式控件( 如a c t i v e x 控件等) ,可以在一定程度上缓解这 个问题,但可能带来更多的安全隐患。 2 1 3 智能客户端应用程序 智能客户端( s m a r t c l i e n t ) 是一个连接到互联网的设备,它允许用户的本 5 武汉理工大学硕士学位论文 地应用程序通过w e b 服务( w e bs e r v i c e ) 和服务器应用程序交互,从而将胖客 户端应用程序和瘦客户端应用程序的优点很好地结合在一起。它的特点如图2 1 所示。州 智能客户端 1 一一, 图2 - 1 智能客户端的特点 从这个意义上讲,智能客户端世纪上就是微软公司n e t 设计思想的具体实 现。按照微软公司的定义,n e t 就是微软公司的) m 几w e b 服务平台,它是为 了解决互联网应用中存在的普遍问题而预先建立的基础设施,即将程序开发的 侧重点从连接到互联网的单一网站或设备上,转移到计算机、设备和服务群组 上,使他们能通力合作,提供更加广泛、更加丰富的解决方案。用户能够控制 信息的传送方式、时间和内容。计算机、设备和服务能够相辅相成,从而提供 丰富的服务,而不是像信息孤岛那样。由用户提供唯一的集成。未来的计算机 环境如图2 - 2 所示。 机顶盒电视ip ci 移动数字助理【游戏机i 智能电器f 手机 网络服务w 曲s e r v i c e s 随 l 服7 , - 提供者 银行i 网上商店 股票交易所l 政府【教育机构f 新闻单位 图2 - 2 未来的计算环境 6 亟堡堡王盔竺堡堂鱼迨塞 通过智能客户端可使用手写、语音和图像技术与个人数据进行交互。个人 数据将被安全地存放在互联网上,通过计算机、移动电话、寻呼机、p d a ,甚 至是移动电话和p d a 和p c 的联合设备来访问这些数据。应用程序可进行灵活 的功能调整,以适应用户所用设备的功能状况,也可根据用户预定义的选项集 和指令集,完全代替用户自动执行相应的操作。 举一个例子,比如一个文字处理程序的智能客户端( 如m i c r o s o f to f f k e w o r d ) 可以通过网络和远程数据库交互,从数据库中获取文档处理需要使用的 数据;运行w m d o w sm o b i l e 的智能手机可以从网络上获取相关图书信息,可以 获取天气预报。要获得这些功能,不需要其他设备,只需要这些终端拥有网络 连接和后台的w e b 服务。 2 2 智能客户端的特征 经过设计,智能客户端应用程序可以将胖客户端应用程序的优点与瘦客户 端应用程序的部署和可管理性优点结合起来,尽管这两种方法之间的平衡的准 确性质取决于确切的情况。智能客户端的概念作为m i c r o s o f t n e t 平台的一个 特性而被提出,其实它的很多功能在传统的应用程序中早已存在,只是n e t 平台从系统和语言级别对它提供了支持,使开发智能客户端应用程序更为便捷。 智能客户端应用程序通常具有形形色色的要求,因此在设计和实现方面会有极 大的差异。但是,所有智能客户端都具有下列部分或全部特征: ( 1 ) 可以利用本地资源; ( 2 ) 可以利用网络资源; ( 3 ) 能支持偶尔连接的用户; ( 4 ) 提供智能安装和更新; ( 5 ) 提供客户端设备的灵活性。 许多应用程序不需要具有上述所有特征。当设计智能客户端时,将需要仔 细考虑应用程序方案,并且决定智能客户端应用程序要求具备上述哪些特征。 如果要将上述所有特征合并到应用程序中,将需要大量的实现资源。 2 2 1 使用本地资源 随着计算机速度的快速提高,现在客户端速度也有了很大的提高,甚至速 7 亟堡堡王_ 丈堂亟堂丝迨銮 度不亚于服务器。因此,合理利用客户端资源的极端资源和其他资源静静成为 不争的事实。设计良好的智能客户端应用程序应该能最大限度的利用这一优势, 它的代码和数据部署在客户端上并且能本地执行和访问,并能为应用程序提供 了内容丰富且相应迅速的用户界面,以及强大的客户端处理能力。例如,它可 以使用户能够执行复杂的数据操作,可视化操作、搜索或排序操作。 智能客户端除了可以利用客户端的硬件资源( 如摄像头或指纹识别器) ,还 可以利用其所在客户端的其他软件和应用程序。这就使它们非常适合解决瘦客 户端应用程序无法很好解决的问题。从这个角度来看,首先,智能客户端通过 最大限度的使用客户端资源以及将本地资源集成到智能客户端应用程序,可以 使应用程序更好、更有效的使用已经存在的硬件。比如当服务器的处理能力不 够,而客户端的处理能力没有得到充分利用的时候。此外,使用客户端计算机 上的资源还可以减少对服务器端的硬件要求。 智能客户端还可以利用本地软件,比如m i c r o s o ro f f i c e 应用程序、l n t e m c t e x p l o r e r 或客户计算机上安装的任何可以协同的应用程序进行协作。智能客户 端通过创建能够与多个应用程序集成并对这些应用程序进行协调的解决方案, 可以使客户端更为有效的工作,进行更好的决策,并减少数据输入的错误。它 还可以更加紧密地与用户的工作环境集成,比如采用用户熟悉的界面,或者是 通过了解正在使用应用程序的上下文,并适应该上下文尽可能的帮助用户,来 提供一致且高校的总体解决方案,从而降低培训成本。 2 2 2 使用网络资源 现在,使用网络资源已经成为大势所趋,瘦客户端依赖就是依赖网络来运 行的,智能客户端也是可以通过网络来使用不同的服务和数据,只能客户端可 以从许多不同的源检索数据,并且可以对数据进行分析和整合,从而使用户能 进行更为有效和明智的决策,比如,一个运行在智能手机上的智能客户端可以 使用网络来寻找出开车的最佳路线和驾驶方向的详细信息智能客户端应用程 序这一性质决定了它也可以对外提供有价值的数据整合、分析和转换服务。它 们使用户可以实时的或者在一段时间内协作完成任务。在许多情况下,智能客 户端应用程序可以向用户提供类似于门户的功能,从而将完全不同的数据和服 务加以协调并集成到总体解决方案中。 在企业网或互联网范围内,智能客户端应用程序都能够轻松的与系统连接 8 亟堡垄王盔堂亟堂焦望皇 并与之进行数据交换。w e b 服务使智能客户端解决方案能够利用行业标准协议 ( 例如,x m l 、h t t p 和s 0 a p ) 来与任何类型的远程系统交换信息。 智能客户端使用网络资源的重点就在于客户端应用程序如何处理对服务器 而言已经过时的数据。一般情况下,它可以通过服务器端应用程序( 例如,通 过w e b 服务) 向客户端提供应用程序数据,或者应用程序可以使用它自己的本 地数据。如果数据是由应用程序提供的。则智能客户端应用程序可以缓存数据 以改善性能或者支持脱机使用。 智能客户端应用程序应该尽可能的连接,并且应该利用可以通过网络使用 的资源和服务,因此,它们不应该是独立的应用程序,每一个智能客户端都可 以使构成更大的分布式解决方案的一部分,此外,智能客户端应该使用有助于 维护该应用程序以及提供部署和更新服务的集中式服务。 2 2 3 支持偶尔连接的用户 智能客户端除了支持持续连接到互联网的用户外,还应该支持偶尔连接。 虽然现在的网络连接程度越来越高,但是,在许多情况下不可能无时无刻都依 赖或存在着网络连接。比如,在旅行的途中,可能会暂时失去无线连接。或者 存在延迟或带宽问题。在网络维护的时候,也不可能存在网络连接。还有一种 情况,即使用户的确具有良好的网络连接,应用程序也可能无法在所有时间都 能访问网络资源,服务器可能会繁忙,停止运行或者暂时不可用。 无论是否连接到互联网,智能客户端应用程序都可以正常工作。微软的 m o n e y 和o u t l o o k 就是两个很好的示例。在没有网络连接或网络连接不畅通的 情况下,智能客户端能够利用本地缓存和处理进行操作,这个功能称为偶尔连 接。这是智能客户端相对于基于w 曲的瘦客户端应用程序所具有的好处之一 当应用程序无法连接到网络资源时,它们能够让用户继续工作。此外,智能客 户端还能够在未连接到网络资源时工作,然后再以后某个时间在后台更新网络 资源。更新的时间可能是立即,也有可能发生在数天甚至数周以后。 偶尔连接功能对新一代的移动应用程序来说极具价值,特别是在指定了移 动连接的成本、期限和速度的情况下偶尔连接功能可以使用户在脱机时仍能 富有成效的工作,并且仍然能够提供连接的应用程序在连接有效时所具有的好 处。智能客户端还可以优化网络带宽,例如,通过讲请求批量发送到服务器, 以便更好的使用代价昂贵的连接。 9 武汉理工大学硕士学位论文 偶尔连接功能不仅可以在移动方案中使用,而且对桌面解决方案也可以使 用。偶尔连接功能会更新后台数据和系统的最新版本,从而保持用具界面的响 应并改善整体的最终用户体验。偶尔连接功能还能够提供成本和性能上的优势, 因为用户界面不像瘦客户端那样,要在客户端和服务器之间来回切换。 即使当客户端能持续连接到网络时,智能客户端应用程序也可通过以智能 方式缓存数据和管理连接来改善性能和可用性。例如,在低带宽或高延迟环境 中,智能客户端应用程序就可以发挥其优势,利用特殊的方式管理连接,不会 损害应用程序的可用性和响应性,使用户可以继续高效的工作。 2 2 4 提供智能安装和更新 传统胖客户端所具有的一些最大的问题发生在部署或更新程序的时候。许 多胖客户端应用程序具有大量复杂的安装要求,并且可能通过注册组件或者在 公共位置安装d l l 来共享代码,从而导致应用程序脆弱性和更新困难。经常会 出现这样的情况,安装一个应用程序会中断另一个应用程序,诸如“d l l h e l l ” 等问题时的安装和维护客户端应用程序变得困难和棘手。 用智能客户端模式设计的应用程序,远比用传统的胖客户端模式设计的应 用程序能更智能和灵活的方式管理它们的部署和更新。它们可以避免上述的常 见问题,从而有助于减少应用程序的管理成本。n e t 框架式的智能客户端部署 或更新应用程序十分的方便。 首先,智能客户端应用程序可以在其运行时或位于后台时对自身进行自动 更新。这一功能使其可以逐个角色的进行更新或以分阶段的方式更新,从而可 以将应用程序推荐给喜欢尝鲜的用户或受限的用户组,或者按照指定的时间表 更新。 此外,n e t 框架还可以对应用程序组件进行强命名,这将意味着应用程序 可以指定用来生成和测试其确切版本的组件,并通过这些版本的组件运行。并 且,n e t 框架使应用程序可以相互隔离,以便在安装一个应用程序是不会破坏 另一个应用程序,并且同一应用程序的多个版本可以并列部署。这些功能大大 简化了应用程序部署,并且消除了许多与胖客户端应用程序相关联的应用程序 脆弱性问题。 l o 基堡垄王盔竺亟圭堂丝鲨塞 2 2 5 提供客户端设备灵活性 许多智能客户端应用程序的基本特点是能够感知目标设备的功能和使用环 境( 无论它是台式、笔记本还是其他的移动设备) ,以及能够定制应用程序以提 供最适当的功能。有了这样的特点,智能客户端可以提供灵活且可自定义的客 户端环境,从而使用户可以将应用程序配置为支持用户喜欢的工作方式。智能 客户端应用程序并没有被限制到台式计算机或便携式计算机。随着移动设备的 连接性和能力的增加,越来越需要能够提供对多个设备上重要数据和服务的访 问的客户端应用程序。n e t 框架提供了一个可用来生成智能客户端应用程序的 通用平台。 在许多情况下,需要设计多个版本的智能客户端应用程序,每个版本都面 向特定的设备类型,以便充分利用该设备所支持的特定功能。例如,在移动设 备上工作的客户端通常无需实现完整范围的智能客户端应用程序的功能,因此, 它们可以指提供对数据和服务子集的移动访问,或者它们仅可用于在用户移动 时收集和整合数据,并最后由功能更加完善的智能客户端应用程序或服务器端 应用程序来分析或处理这些数据。 2 3 智能客户端的类型 由于智能客户端应用程序并不一定会具有智能客户端的所有特点,因此它 们在设计和实现方面差异极大,这些差异一方面包括应用程序要求,另一方面 也包括可以使用它们的方案和环境的数量。因此。智能客户端可以采取许多不 同的形式和风格。根据智能客户端应用程序所面向的平台,可以将这些形式划 分为3 大类:四 ( 1 ) w i n d o w s 智能客户端应用程序; ( 2 ) o f f i c e 智能客户端应用程序; ( 3 ) 移动智能客户端应用程序。 2 3 1w in d o w s 智能客户端应用程序 说起胖客户端时,用户通常可能会想到在计算机上使用可用的系统资源提 供内容丰富的用户界面的应用程序。面向w i n d o w s 的智能客户端应用程序是在 武汉理工火学硕士学位论文 传统胖客户端应用程序的基础上发展而来的。这种应用程序通常使用w i n d o w s 窗体来提供熟悉的w i n d o w s 风格的用户界面,而且由应用程序本身提供大部分 的功能,而且不依赖于其他应用程序来提供主用户界面。这样的智能客户端既 可能包括通过h t r p 部署的简单应用程序,也可能包括非常复杂的应用程序。 它是智能客户端中使用最为广泛的一种。 w i n d o w s 智能客户端应用程序式和于需要将应用程序作为熟悉的桌面类型 应用程序进行部署和访问的情况。这些类型的应用凶横须通常由其自身提供大 部分的功能,但是在适当的时候可以与其他应用程序集成或者协调其他应用程 序。它们可以针对特定任务进行调整其应用程序功能,以提供特定或高性能的 处理或图形能力。 w i n d o w s 智能客户端应用程序通常是最适合于在p c 上运行的应用程序。 此外,他们通常不会提供与特定文档或文档类型紧密关联的功能。 2 3 2o f f i c o 智能客户端应用程序 微软公司的o m c c2 0 0 3 为开发人员提供了用来生成智能客户端应用程序 平台,尤其是在企业设置中。通过o m c e 智能客户端解决方案,开发人员可以 将通过w e b 服务访问的数据源于w o r d2 0 0 3 、e x c e l2 0 0 3 、i n f o p a t h2 0 0 3 或其他 o m c e 应用程序的功能集成起来,以开发智能客户端解决方案。尤其是在o f f i c e 2 0 0 3 系统中,x m l 已经成为0 街c e 系统的统一格式。 o f f i c e2 0 0 3 支持x m l ,并且可以将该数据与文档的其他方面分开,以便 它可以由其他应用程序重新使用。因为微软公司的o f f i c e 中的应用程序数据可 以由多个应用程序中相同的客户定义的x m l 架构进行说明,所以可以将这些 数据集成到智能客户端应用程序中。这样的o f f i c e 智能客户端应用程序可以成 为信息管理周期的集成部分,而不只是文档数据的静态容器。当用户在文档内 工作时,它们可以提供上下文相关的数据,以及可以将w e b 服务公开的数据转 换为有用信息的工作流和任务指导、数据分析、协作、报告和呈现功能。 2 3 3 移动智能客户端应用程序 移动智能客户端是在智能客户端设备上运行的应用程序,这些智能设备包 括p o c k e tp c 、智能手机以及其他超小型台式设备。这些应用程序是使用n e t 1 2 亟迅垄三盔堂亟堂焦迨塞 框架压缩版开发的。n e t 框架压缩版是是完整的n e t 框架的子集,有完整 的n e t 框架的许多功能,并支持x m l ,并且能使用w e b 服务。它被进行了优 化以便在超小型台式设备上使用,并且它包含用于开发用户界面的l r m d o w s 窗 体设计器。 通过使用v i s u a ls t u d i o n e t 智能设备项目,可以开发能够在n e t 框架压 缩版上运行的智能客户端。采用这一方法,可以通过在超小型台式设备的模拟 器上使用v i s u a ls t u d i o n e t 来开发、测试和调试应用程序。模拟器的使用大 大加快了这些类型应用程序的开发和测试速度。 移动智能客户端应用程序通常用于提供对重要数据和服务的移动访问,或 者在用户处于移动状态时收集和整合数据。这些类型应用程序的示例有移动电 子商务、保险和金融数据收集应用程序、库存管理应用程序和个人工作效率管 理应用程序等。 1 3 武汉理j 大学硕士学位论文 第3 章n e t 环境实现智能客户端的关键技术 本章介绍了在n e t 平台下实现s m a r tc l i e n t 技术要涉及到的几项关键技 术,包括对m i c r o s o t ! t n e t 框架基本原理的简介、a d o n e t 数据处理和x m l w e bs e r v i c e 的简要介绍。 3 1 n e tf r a m e w o r k 基本原理简介 n e tf r a r a e w o r k 是用于构建和运行下一代软件应用程序和m 。w e b 服务 的w i n d o w s 组件。n e t 框架提供了一个高效并标准的环境,用于将现有资源 与下一代应用程序和服务进行集成,它支持2 0 多种不同的编程语言,其体系结 构如图3 1 所示。 回田园回口 图3 - 1n e tf r a m e w o r k 体系结构 由图3 1 ,我们可以看出n e tf r a m e w o r k 具有两个主要组件:通用语言运 行时( c o r o j n o nl a n g u a g er u n t i m e ,简称c l r ) 和n e t 框架类库( c l a s sl i b r a r y , 简称c l ) 。公共语言运行时是n e tf r a m e w o r k 的基础。运行时可被看作一个在 执行时管
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2031年中国水晶活性金深层滋养去角质层行业投资前景及策略咨询研究报告
- 2025劳动合同的法律风险防控
- 2025签订汽车买卖合同的注意事项
- 2025至2031年中国V型组合圈行业投资前景及策略咨询研究报告
- 2025至2030年中国46-二羟基嘧啶数据监测研究报告
- 阳台木地板的施工方案
- 2025至2030年中国胶芯端子数据监测研究报告
- 土方运输施工方案上海
- 德州打桩机施工方案
- 上海异形钢板桩施工方案
- 《产科超声之科普讲》课件
- 2024年中考语文试题分类汇编:非连续性文本阅读(教师版)
- 中建质量样板实施方案
- 20以内进位退位加减法计算题-
- 川教版四年级《生命.生态.安全》下册全册 课件
- 混凝土路面工程监理实施细则
- 宠物电商平台运营模式探究
- 2024年西式面点师(技师)试题库及答案
- 纳米材料在纺织的应用
- 《政府购买动物防疫社会化服务管理规范(征求意见稿)》
- 2024年四川省巴中市中考道德与法治试卷真题(含答案解析)
评论
0/150
提交评论