(计算机应用技术专业论文)基于智能客户端的mis系统的研究与实现.pdf_第1页
(计算机应用技术专业论文)基于智能客户端的mis系统的研究与实现.pdf_第2页
(计算机应用技术专业论文)基于智能客户端的mis系统的研究与实现.pdf_第3页
(计算机应用技术专业论文)基于智能客户端的mis系统的研究与实现.pdf_第4页
(计算机应用技术专业论文)基于智能客户端的mis系统的研究与实现.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

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

文档简介

河海大学硕士研究生毕业论文基于智能客户端的m i s 系统的研究与实现 摘要 信息技术的迅速发展大大加快了企业的现代化与信息化的进程。企业信息化 已成为全球化的发展趋势。在分析了国内外离线工作的研究现状的基础上,本文 主要研究了智能客户端的离线应用,针对目前m i s 系统离线应用存在的问题, 提出了相应的策略。智能客户端是将胖客户端应用程序的优点和瘦客户端应用程 序的部署和可管理性优点结合起来,使之在资源的利用上达到一个平衡。 针对可离线应用的m i s 系统的设计与研究,本文做了如下工作: 在o m i n ea p p l i c :a t i o nb l o c k 的基础上对其进行了扩充,提供一套完整的 类库或a p i ,使得企业开发更容易。 在s o a 框架基础上构建智能客户端的离线应用,形成一套适合于企业应 用开发的框架。包括连接监视、服务请求、服务查找、服务提供、服务安全。 研究网络状态检测算法、数据缓存更新策略、数据同步策略、数据并发 策略。结合智能客户端技术,通过w e bs e r v i c e 和m s m q 实现了带事务机制的 分布式并发。 利用m i c r o s o f t v i s u a ls t u d i o n e t 2 0 0 3 ,借助于微软的0 m i n e a p p l i c a t i o n b l o c k 和u p d a t ea p p l i c a t i o nb l o c k 构建基于智能客户端离线应用的开发环境,利 用x m lw 曲s e r v i c e 对服务器端进行访问从而实现数据库操作和自动部署和更 新,进一步研究面向服务的智能客户端程序体系结构。 关键词:智能客户端,离线工作,数据并发,面向服务,m i s 系统 河海大学硕士研究生毕业论文基于智能客户端的m i s 系统的研究与实现 a b s t r a c t t h er a p i dd e v e l o p m e n to f n f o r m a t i o nt e c h n o l o g y , w h i c hh a sa l r e a d yb e e nt h et e n d e n c yf o r g l o b a ld e v e l o p m e n t , h a sg r e a t l ya c c e l e r a t e dt h em o d e r n i z a t i o n a n di n f o r m a t i z a t i o nf o re n t e r p r i s e s s oo nt h eb a s i so f a n a l y z i n gt h ep r e s e n tr e s e a r c h e so no f f i i n ew o r kb o t ha th o m ea n da b r o a d , t h i s p a p e rm a i n l ys t u d i e st h ea p p l i c a t i o no fo f f i i n ew o r kt os m a r tc l i e n t , w h i c hc o m b i n e st h e a d v a n t a g e so fr i c hc l i e n ta p p l i c a t i o na sw e l la st h ed e p l o y m e n ta n da d m i n i s t r a b l eo ft h i nc l i e n t a p p l i c a t i o n s ot h a ti tc a na c h i e v et h eb a l a n c oo fu s i n gr e s o i l r c c s a n dt h a nw o v i d e sr e l e v a n t s o l u t i o n st oe x i s t i n gp r o b l e m sa b o u tt h ea p p l i c a t i o n so f o f l l i n ew o r ka nm i ss y s t e m a s f o r t h ed e s i 毋a i n g a n dr e s e a r c h e so f m i ss y s t e m a p p l i e do f f i i n e ,t h i s p a p e r f o c u s e s o n t h e f o l l o w i n gw o r k : e x u d i n go f f i c ea p p l i c a t i o no nt h eb a s i so fo f f l i n ea p p l i c a t i o nb l o c ka n dp r o v i d i n ga n i n t e g r a t e ds y s t e mf o rc l a s sl i b r a r yo r a p i , w h i c hm a k e se n t e r p r i s ee x p l o r a t i o ne a s i e r ;, c o n s t r u c t i n go f f l i n ea p p l i c a t i o no fs m a r tc l i e n to l lt h eb a s i so fs o af r a m e w o r k , w h i c h b u i l d sas o to ff r a m e w o r ks u i tf o ra p p l i c a t i o na n de x p l o r a t i o no fe n t e r p r i s e si n c l u d i n gs c r u t i n y , s e r v i c er e q u e s t , s e r v i c es e a r c h , s e r v i c es u p p l ya n ds e r v i c es e c u r i t y ; s t u d y i n gt h ea l g o r i t h m sf o rn e t w o r kc o n d i t i o n , t h es t r a t e g yf o rr e f r e s h i n gd a t ac a c h i n g , t h ed a t as y n c h r o n i z a t i o ns t r a t e g ya n dt h ed a t ac o n c u r r e n c ys t r a t e g y ;t h e nr e a l i z i n gt h e d i s t r i b u t i o ne r u p t i o no f t r a n s a c t o nl | 1 j r o n g hw e bs e r v i c ea n dm s m q ; b yu s i n gm i c r o s o f tv i s u a l 洲o n e t2 0 0 3 c o n s c u c t i n gt h ee x p l o i te n v i r o n m e n tb a s e d o no f l l i n ea p p l i c a t i o no fs m a r tc l i e n t , w i t ht h eh e l po fo r l i n ea p p l i c a t i o nb l o c ka n du p d a t e a p p l i c a t i o nb l o c ko fm i c r o s o f t ;t h e nu s i n gx m l w e bs e r v i c et oa c c e s st h es e r v e ri no r d e rt o r e a l i z et h eo p e r a t i o n , a u t od e p l o y m e n ta n du p d a t ef o rd a t a b a s e ;a n dt h em s e m c hf o rt h es u l m t i l r e o f s e r v i c e - o r i e n t e ds m a r tc l i e n tp r o g r a mg o i n gs t o pf u f t h o r k e y w o r d s :s m a r t c l i e n t , o f f i i n e w o r k ,d a t a e r u p t s ,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 ,m i ss y s t e m l i 学位论文独创性声明: 本人所呈交的学位论文是我个人在导师指导下进行的研究工作 及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方 外,论文中不包含其他人已经发表或撰写过的研究成果。与我一同工 作的同事对本研究所做的任何贡献均已在论文中作了明确的说明并 表示了谢意。如不实,本人负全部责任。 论文作者( 签名) :丕堡2 0 0 7 年3 月1 8 日 学位论文使用授权说明 河海大学、中国科学技术信息研究所、国家图书馆、中国学术期 刊( 光盘版) 电子杂志社有权保留本人所送交学位论文的复印件或电 子文档,可以采用影印、缩印或其他复制手段保存论文。本人电子文 档的内容和纸质论文的内容相一致。除在保密期内的保密论文外,允 许论文被查阅和借阅。论文全部或部分内容的公布( 包括刊登) 授权河 海大学研究生院办理。 论文作者( 签名) :生堡2 0 0 7 年3 月1 8 日 河海大学硕士研究生毕业论文 基于智能客户端的m i s 系统的研究与实现 1 1 研究背景 第一章引言 信息技术的迅速发展大大加快了企业的现代化与信息化的进程。企业信息化 已成为全球化的发展趋势。以企业管理信息系统( m i s :m a n a g e m e n ti n f o r m a t i o n s y s t e m ) 为代表的管理数字化是现代企业信息化技术特点的重要体现。所谓m i s 系统,是一个由人、计算机及其他外围设备等组成的能进行信息的收集、传递、 存贮、加工、维护和使用的系统。它是一门新兴的科学,其主要任务是最大限度 的利用现代计算机及网络通讯技术加强企业的信息管理,通过对企业拥有的人 力、物力、财力、设备、技术等资源的调查了解,建立正确的数据,加工处理并 编制成各种信息资料及时提供给管理人员,以便进行正确的决策,不断提高企业 的管理水平和经济效益【l 】【2 j 。 在传统的m i s 开发中,一般都是使用c s 的方式来进行,这种开发方式具有 数据传输效率高,用户界面友好,可以在客户端存储大量的用户个性化信息等特 点;但是,这种方式也有它的缺点,就是应用范围太窄,一般局限在企业局域网 内部,而且需要每一个终端都要安装完整的客户端程序,在客户端程序版本变更 时,需要给每一个终端重新安装,维护起来也不方便。后来,随着互联网技术 的迅速发展,出现了b s 的企业解决方案。在这种解决方案中,系统的应用范围 扩大到了整个互联网,而且由于实现了零客户端,使人们的使用摆脱了客户端的 限制,因此得到了很大的发展。但是b s 系统也有它的先天不足,即它不能利用 本地资源,如无法使用多线程,利用本地硬件,而且表现能力太差,使用起来也 没有c s 系统那么方便,这些都阻碍了它的发展 3 1 1 4 1 。m i s 系统经过几年的发展 已经是一个很成熟的系统,但由于基于不同的架构,各有优缺点,有着其无法解 决的问题。 最近两年,业界又提出了智能客户端( s m a r tc l i e n t ) 的概念,它集c s 和b s 的大成,吸取了它们的优点,摒弃了它们的不足,取得了很好的效果。目前,s m a r t c l i e n t 技术基本成熟,国外和台湾地区研究稍早,国内正处在起步阶段1 5 1 6 7 1 。究 其原因,主要是因为智能客户端技术,特别是在离线应用中还不十分成熟,用于 创建智能客户端的软件包较少,而且实现不完整,如果要开发真正的智能客户端 程序要自行编写许多代码;另外一个原因是智能客户端涉及多种技术,国内的推 广和培训工作并未完全展开;还有个原因就是企业对于是否有需求使用智能客户 端技术还处于不确定状态,这几个原因导致国内研究滞后于国外。 智能客户端的具体实现是这样的:终端运行一个轻量级的客户端程序( 一般 只有几十k ) ,该客户端只是程序的基本框架,它装载各应用模块;如果服务器 - 1 河海大学硕士研究生毕业论文 基于智能客户端的m i s 系统的研究与实现 端有新的应用模块版本,它还负责自动更新和部署;服务器的数据交换一般使用 w e b 服务的方式【8 j 。随着w e bs e r v i e s 与新一代软件技术的崛起,g a r t n c rg r o u p 、 g i g ai n f o r m a t i o ng r o u p 等研究机构报告显示,应用程序框架正再度向分散的方向 演进,而发展出新一代的应用程序框架。g a r t n e r 将之称为h i g hf i d e l i t yc l i e n t 或 是s m a r tc l i e “6 】。智能客户端在离线应用中的研究都还处于研究初期,存在不 少问题,微软给出了一个o f f l i n ea p p l i c a t i o nb 1 0 c k 【5 】【8 】,虽然该模块能使开发人 员较快的开发出智能客户端程序,但是其中好多策略并不完善,对于离线系统中 如何保证数据的一致性以及事务机制都要进一步的探讨,此外在数据管理上原 b l o c k 还有待提高,对一些情况下会没有相应的数据管理策略。 1 2 相关研究 1 2 1m i s 系统最新概况 由于m i s 代表了当代的先进企业管理模式与技术,并能够解决企业提高整 体管理效率和市场竞争力问题,近年来m i s 系统在国内外得到了广泛推广应用。 随着信息技术、先进制造技术的不断发展,企业对于m i s 的需求日益增加,进 一步促进了m i s 技术向新一代m i s 或后m i s 的发展。推动m i s 发展有多种因 素:全球化市场的发展与多企业合作经营生产方式的出现使得m i s 将支持异地 企业运营、异种语言操作和异种货币交易;企业过程重组及协作方式的变化使得 m i s 支持基于全球范围的可重构过程的供应链及供应网络结构;越来越多的流程 工业企业应用也从另一个方面促进了m i s 的发展。计算机新技术的不断出现将 会为m i s 提供越来越灵活与强功能的软硬件平台,多层分布式结构、面向对象 技术、中间件技术与i n t e m e t 的发展会使m i s 的功能与性能迅速提高。 m i s 系统包括了多个环节的多种需求,而在电子商务向动态发展【9 】的时候, 企业信息管理系统的新需求如下: 1 无论是无线上网还是有线上网,都会出现离线的状态,因此,有必要保 证系统在离线状态上也可用。 2 m i s 系统中有许多应用是建立在不同的系统平台上,如信息采集,信息 管理等应用都可架设在s m a r t p h o n e s ,p d a s ,t a b l e tp c s 和l a p t o p s 等移动平台 中,即要求一次编写,多种部署【1 0 1 。 3 对于移动设备来说,网络是不太可靠的资源,有必要给予应用数据同步 的特征,使得应用程序实现无差异的操作。 4 要与现有的桌面应用程序和系统相集成,充分利用原有信息系统的资源 1 1 1 1 2 1 1 1 3 1 。 河海大学硕士研究生毕业论文 基于智能客户端的m i s 系统的研究与实现 5 m i s 系统必需要能使用本地资源,要能进行数据仓库和联机分析处理 o l a p 功能。 可以看出随着m i s 系统和信息技术的发展,m i s 必将以客户服务器、浏览 器服务器分布式结构、多数据库集成与数据仓库、x m l 、面向对象方法和 i n t e m e t e x t r a n e t 、软构件与中间件技术等为软件实现核心技术,并采用e a i 应用 服务器、x m l 等作为m i s 系统的集成平台与技术。s o a 是面向服务的架构模型, 它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和 使用。是目前最流行的一种架构模型。 1 2 2 智能客户端 智能客户端主要是由微软倡导的一项新技术,为了结合b s 和c s 结构的优 点而提出的。微软对于智能客户端的定义是这样的:智能客户端是易于部署和管 理的客户端应用程序,它们通过统筹使用本地资源实现分布式数据资源的智能连 接,从而提供适应的、快速响应的和丰富的交互式体验。智能客户端技术是瘦客 户端应用的强大代替技术。由于软件巨头微软的大力推动,可以预料,它将在 m i s 产业变革中扮演重要的角色。 和b s 或c s 相比,智能客户端技术具有非常明显的优势。总结起来可以 概括为三点,即本地资源充分利用和享受本地用户体验、具备离线连接能力,以 及智能部署和自动更新。 智能客户端应用程序会因功能级别的不同而呈现出多种形式和大小。因为所 有智能客户端应用程序都具有的一个特性是具有利用本地资源的能力,例如,用 于存储、处理或数据捕获的硬件( 例如,闪存、c p u 和扫描仪) 。在企业或i n t e m e t 范围内,智能客户端应用程序能够轻松地与系统连接并与之进行数据交换。w e b 服务使智能客户端解决方案能够利用行业标准协议( 例如,x m l 、h t t p 和 s o a p ) 来与任何类型的远程系统交换信息。更为重要的是,无论是否连接到 i n t e r n e t ,智能客户端应用程序都可以正常工作。在没有网络连接或网络连接断 续时,智能客户端能够利用本地缓存和处理进行操作。该功能对于新一代的移动 信息工作者来说极具价值,尤其是在指定了移动连接的成本、期限和速度的情况 下i s 7 1 。 需要提出的是,离线功能不仅可以在移动方案中使用,而且对于桌面解决方 案也可以利用离线体系结构来更新后台线程上的后端系统,从而保持用户界面的 响应并改善整体的最终用户体验。智能客户端的脱机服务不是能适合m i s 系统 的所有解决方案。要求单个服务请求的任务非常适合脱机方案。此类任务遵循“先 编写后转发”模型,在此模型中,用户指定服务请求所要求的所有数据,然后在 客户端重新连接时将其转发给实际服务。此类任务的示例有:撰写电子邮件、撰 河海大学硕士研究生毕业论文 基于智能客户端的m i s 系统的研究与实现 写会议邀请函和输入订单信息等。所有这些任务都是独立项目,用户可以脱机完 成它们,并且它们只产生单个服务请求。相比而言,要求完成多个服务请求的任 务在脱机状态下很难管理,这是因为在应用程序重新连接到网络之前,中间服务 请求的结果是不可用的。对用户而言,在重新连接之前,任务将显示为挂起,这 样会导致不好的用户体验。 该体系结构还能够提供成本和性能上的优势,这是因为用户界面不需要在智 能客户端与服务器之间来回切换。另外,由于智能客户端只能在后台与其他系统 交换所需的数据,因此可以让人感到它与其他系统交换的数据量的减少( 即使在 硬连接的客户端系统上,这种带宽的减少也会带来巨大的好处) 。这反过来会增 强用户界面( u d 的响应因为u i 不是通过远程系统呈现的。 过去的客户端应用程序很难进行部署和更新。经常会出现这样的情况:安装 一个应用程序会中断另一个应用程序。诸如“d l lh e l l ”等问题使得安装和维护 客户端应用程序变得很困难和棘手智能客户端技术有效地解决了该问题,客户 端尽管不完全是零安装,但是已做到零维护,客户端程序即用即下载、自动匹配 版本、支持断点续传,真正体现了“智能”特质。可以看出,智能客户端更能适 合m i s 系统所提出来的新要求f 1 4 1 1 7 1 。 由于c s 与b s 都有不可避免的局限性,而智能客户端恰好能解决他们的问 题,能提高用户满意度,因此,专家们认为,智能客户端是m i s 技术发展的新 方向。 1 3 研究内容 本文参照智能客户端的体系架构,在原有m i s 系统的基础上探讨和研究智 能客户端在新型m i s 要求下的应用。具体研究内容如下: 介绍了m i s 系统最新动态以及对计算机技术的新要求,论述了智能客户端 对m i s 系统的研究意义。 总结了智能客户端系统的体系结构,实现机制和支撑技术。介绍了x m l w e b s e r v i c e 、s e r v i c e - o r i e n t e d a p p r o a c h 、m s m q 等基本概念。 设计了针对m i s 系统的智能客户端体系结构,对其组成部分一脱机工作 ( 单个服务请求的任务) ,数据一致性,可配置性,部署和维护,多系统集成做 了相应的实验并且分析了系统存储的性能。详细探讨了连接检测策略,数据缓存 更新策略,数据同步策略和数据并发策略。 在n e t 基础上构建一个基于智能客户端的m i s 系统的实验环境,对连接检 测,数据缓存更新,数据同步和数据并发作了相关的实现和测试。 河海大学硕士研究生毕业论文基于智能客户端的m i s 系统的研究与实现 1 4 研究意义 智能客户端与离线应用技术的部分特征已经在微软提供的o f f i i n e a p p l i c a t i o nb l o c k 中体现,但是,把它们的所有特征进行集成,形成一套适合于 企业应用开发的框架,提供一套完整的类库或a p i ,使得企业开发更容易,更适 合移动应用将是重要的课题。另外,m i s 系统中有一部分涉及离线操作和利用本 机资源的需求,因此,开展本课题很有实际应用意义。 1 5 研究思路 本文的工作主要是在分析现有智能客户端技术的基础上,研究o f f i i n e a p p l i c a t i o nb l o c k 的设计与实现,扩展o f l a i n ea p p l i c a t i o nb l o c k 的策略,根据 m i s 系统的需求编写一些通用的a p i ,重新封装为更实用的类库,形成智能客户 端开发包,提供给企业开发者使用。本文同时讨论了面向服务的智能客户端离线 应用程序的体系结构,m i s 系统中移动办公在离线应用上的代表性,基于离线应 用基础库和这个体系结构,把智能客户端与离线技术应用于m i s 系统中。 1 6 论文组织 本文共分为六章 第二章:智能客户端体系结构和相关技术。总结了智能客户端的体系架构、 实现机制和支撑技术。 第三章:基于智能客户端的新型m i s 系统的分析和设计。讨论了智能客户 端离线宜用的设计模式,首先分析了智能客户端中的网络通讯策略,接着分析了 服务导向的存取模式、服务a g e n t 机制以及基于粗粒度服务的设计方法,最终给 出了适合m i s 的面向服务的智能客户端离线应用程序的体系结构。 第四章:阐述了系统中关键技术的研究。介绍了o f f l i n e a p p l i c a t i o nb l o c k 的 主要优缺点,扩充了策略,包括连接检测算法,数据缓存更新策略,数据同步和 数据并发策略并对其中关键技术进行了探讨。 第五章:基于智能客户端的新型m i s 系统的实现,具体系统的实现细节。 第六章:总结与展望。对全文的工作进行小结,并提出了现存的问题,以及 今后的研究方向。 河海大学硕士研究生毕业论文 基于智能客户端的m i s 系统的研究与实现 第二章智能客户端体系结构和相关技术 智能客户端的概念作为m i c r o s o f t n e t 平台的一个特性而被提出,其实它的很 多功能在传统的应用程序中早已存在,只是n e t 平台从系统和语言级别对它提 供了支持,使开发智能客户端应用程序更为便捷。对用户而言,这将是新的一种 软件使用体验,能同时拥有c s 模式软件快速的反应、丰富的用户界面体验和瘦 客户端模式那样简单的部署、升级。 2 1 智能客户端体系结构 2 1 1 智能客户端概述 智能客户端应用程序是瘦客户端应用程序的强大替代产品。它们可以为用户 提供内容丰富且响应迅速的用户界面,提供脱机工作的能力,并且提供利用本地 硬件和软件资源的方法。此外,可以将它们设计为在各种各样的客户端设备上运 行,包括桌面p c 、平板p c 以及手持移动设备( 如p o c k e t p c 和s m a r t p h o n e ) 智能客户端为用户提供了在强大且直观的客户端环境中访问信息和远程服务的 能力,并且是一种用来开发灵活的、面向用户的应用程序以及提高用户工作效率 和满意度的有效的解决方案【1 5 1 。 简而言之,s m a r tc l i e n t 智能客户端就是这样一种可扩展的能集成不同应用 的桌面应用程序:它可以无接触部署、即需即装、动态加载,x c o p y 即可运行 而无须修改注册表,可以动态升级、自动更新,可以方便的经w e b 运行而不用 担心防火墙问题并可以方便的离线运用,方便的连接w e bs e r v i c e s 的g r m d o w s 应用程序【1 6 1 。 智能客户端有如下优点嘲: 动态加载,即需即装 应用程序的各个构件之间的相互调用并不采用直接引用的方式,而是采用动 态加载,即需即装的方式,有效地降低了对系统资源的消耗。应用软件开发商可 根据企业应用系统的公共接口进行开发,然后将应用组件发布在企业的服务器 上,客户端应用程序将自动发现并加载该应用组件。 更松散的耦合 由于上面第一点所言构件之间的相互调用并不采用直接引用方式,这样系统 实现的更松散的耦合,为应用程序升级更新提供了方便。 河海大学硕士研究生毕业论文 基于智能客户端的m i s 系统的研究与实现 进一步的模块化 由于应用程序的松散耦合特性,使得系统的进一步模块化成为了可能,新功 能、新特性的加入只需要开发出符合接口定义的新模块并添加连接即可。而无需 重新编译现有的程序。 零接触部署 安装时只要将一个主程序文件下载到本地,直接运行即可,无须改变注册表 或共享的系统组件,其他应用组件将在第一次运行时自动下载1 4 】。 网络加载应用程序组件 s m a r tc l i e n t 的应用程序可以很方便的从网络服务器加载应用程序,而且因 为程序及加载是从8 0 端口实现,故无须考虑防火墙问题,这样为企业系统的集 中管理提供了方便。 自动更新 只需将新版本的程序发布在服务器上,由客户端自动发现最新版本的程序和 应用组件,并自动下载和更新。 在线与离线均可使用的应用程序 s m a r tc l i e n t 应用程序尽管使用网络加载程序集,但一旦加载之后,程序集 便被缓存到了本地。当用户至少启动了一次应用程序后,其装配就被下载和缓存 到本地内存中了,所以用户就可以离线运行你的智能客户端了( 通过转换浏览器 到离线工作状态) ,假设应用程序不需要永久访问w e bs e r v i c e s 或一个共享的数 据库就可以运行。 构建智能客户端的最大的好处就是可以离线使用。尽管业务之间的联系越来 越紧密,但仍不能给企业应用程序提供始终连续的连接。离线式工作方式可以在 你重新在线时,自动接收数据和应用程序更新,这种特征是人们很想得到的,但 在n e t 前,这是很难实现的。和胖客户端一样,智能客户端给客户端分布大量 的处理,这就为服务器免除了它在一个基于w e b 的应用程序中需要承担的负荷 l 埘。最后,智能客户端采取一种用户希望应用程序采取的工作方式允许快 速数据存取和管理,而不需要不必要的屏幕更新。 与w e bs e r v i c e s 的完美集成 s m a r tc l i e n t 应用程序可以与w e bs e r v i c e s 方便的集成应用,这样便可以轻 松享受c s 应用程序的完美用户体验而不需担心防火墙等等的一系列问题。 河海大学硕士研究生毕业论文基于智能客户端的m i s 系统的研究与实现 2 1 2 智能客户端的工作模型 图2 - 1 智能客户端的工作模型 智能客户端主要使用应用程序加载器用h t t p 从w e b 服务器上的一个虚拟目 录来访问和下载装配。下载后,装配被缓存起来,只有需要的时候才执行它们。 当服务器上有版本更新后,利用x c o p y 部署直接部署到i i s 的虚拟目录内,客 户端主要依靠应用程序加载器到w e b 服务器上使用h t t p 协议自动更新【。 2 2 智能客户端的实现机制 2 2 1 数据处理 s m a r tc l i e n t 是一个基于浏览器缓存机制和在线离线均可运行的应用程序, 那么从理论上讲应用程序所访问过的数据也应当会在本地缓存。如果并没有自动 缓存,那么就需要考虑编写代码实现常用数据的本地缓存,毕竟一些不是常常更 新的数据每次读取都到服务器上去获取一次是没有太大必要,这样也体现不出 s m a r tc l i e n t 的优势。 要启用数据缓存,智能客户端应用程序给出了两种缓存基础结构,以便透明 地处理数据缓存细节。 短期数据缓存。在内存中缓存数据对性能有益,但不能持久,因此用户 可能需要在重新运行应用程序时从源拉入数据。 长期数据缓存。通过在持久性媒体( 如独立存储或本地文件系统) 中缓 存数据,可以在没有连接到服务器时使用应用程序。用户可以选择将长 河海大学硕士研究生毕业论文基于智能客户端的m i s 系统的研究与实现 期存储与短期存储结合起来以改善性能。 无论采用哪种缓存机制,都应该确保仅将用户有权访问的数据提供给客户 端。而且,在客户端缓存的敏感数据要求进行认真处理以确保它的安全,要能够 区分已经成功地与服务器进行同步的数据和仍然暂定的数据。这一区分过程可以 帮助应用程序更加容易地检测和处理数据冲突。而且,设计时可能需要禁止应用 程序或用户基于暂定数据进行重要决策或者启动重要操作,通过使用适当的缓存 基础结构,可以跟踪暂定数据和已经确认的数据。此外对于数据并发问题,程序 设计时需要采用某种机制来确保在对数据进行同步时,数据冲突能够得到适当的 处理,并且最后得到的数据是一致和正确的。在n e t 框架中可以使用a d o n e t 数据集来处理数据,并且利用w i n d o w s 窗体数据绑定功能来缓存数据。 如果连接是处于在线状态的,本地数据可以暂时保存在内存中,a d o n e t 里的d a t a s e t 本身就是可以用内存临时存储的数据对象,数据在内存中存储只是 一个临时过渡,当数据需要经过操作后保存回远程数据库时,方法可以使用 d a t a s e t 的数据适配器d a t a a d a p t c r 将变化的量返回数据库操作,这样既加快了本 地的反应又节省了带宽闭。 如果,应用程序在断线的状态下工作,则将数据保存回本地的数据存储结构, 待再次连线时,装载进d a t a s e t ,进行处理。 2 2 2 建立连接 按照定义,智能客户端需要连接到其他资源并与这些资源进行通讯,并且构 成分布式应用程序的一部分。这些资源可以是客户端进程或组件,也可以是网络 资源。微软的n e t 框架主要提供以下四种连接方式供使用者选择【l 川: m i c r o s o f t n e te n t e r p r i s es e r v i c e s a 可以使用n e te n t e r p r i s es e r v i c e s 提供对托管代码组件和应用程序的 c o m + 服务基础结构的访问。 m i c r o s o f t n e tr e m o t i n g 。 n e tr e m o t i n g 提供了灵活且可扩展的远程过程调用( r p c ) 机制,n e t 组件可以通过该机制进行通讯。通过n e tr e m o t i n g ,可以使用多种通讯协议 ( 如h t t p 或t c p ) 、数据编码选项( 包括x m l 、s o a p 和二进制编码) 和各 种对象激活模型。它是对象间进行通讯的快速而有效的手段。 m i c r o s o f t w i n d o w s 消息队列( 也称为m s m q ) 借助于m i c r o s o f tw i n d o w s 消息队列,可以很容易地通过发送和接收消息, 快速而可靠地与应用程序通讯。消息处理为我们提供了有保证的消息传递以 及执行许多业务过程的可靠方式。消息队列提供了一种可以在智能客户端应 用程序内使用的松耦合通讯机制。 河海大学硕士研究生毕业论文基于智能客户端的m i s 系统的研究与实现 w e b 服务 w e b 服务的基于s o a p 的x m l 消息可以具有显式( 结构化和类型化) 部分或宽松定义部分( 使用任意) m 几) 。这意味着w e b 服务既可以是松耦 合的,也可以是紧耦合的,并且可用于实现基于消息或r p c 风格的系统, 具体取决于环境的准确性要求。 2 2 3 偶尔连接 智能客户端软件当然不能过于频繁地访问网络上的服务端,因为这样会严重 影响软件的性能,另外,对于连接发生的更改( 包含如手动连接、自动连接、连 接意外中断和连接长期不用等情况) 软件也要作出相应的反应,以体现其智能的 特点【柳。 要给予应用程序完整的偶尔连接功能,智能客户端需要提供一种基础结构, 使用户能够在没有连接到网络资源时工作。该结构应该包括数据缓存,以便可以 在客户端使用所有需要的数据;它还应该包括用户工作详细信息的存储,以便用 来在用户重新联机时将客户端与网络资源同步。为了实现偶尔连接,智能客户端 应用程序给出两种概括性的体系结构:以数据为中心和面向服务。 使用以数据为中心的策略的应用程序具有一个在客户端上本地安装的关系 数据库管理系统( r d b m s ) ,并且使用该数据库系统的内置功能将本地数据更改 传回服务器,处理同步过程,并检测和解决任何数据冲突;使用面向服务方法的 应用程序将信息存储在消息中,并且当客户端脱机时将这些消息排列到队列中。 在重新建立连接以后,排队的消息将被发送到服务器进行处理。 在大多数情况下,智能客户端使用异步通讯和简单的网络交互。客户端需要 缓存数据以便在脱机时使用,而且需要一种在客户端重新联机后处理数据和业务 规则冲突的方法。在许多情况下,脱机客户端允许用户执行一些相互依赖的任务。 需要处理这些依赖性,以防其中某个任务到达服务器时发生失败,智能客户端还 可能需要与类似于c r u d 的w 曲服务交互。 2 2 4 部署与更新 智能客户端应用程序有多种部署和更新方式,应该考虑将如何部署和更新这 些应用程序。只要有可能,都应该努力将任何安装和更新的系统影响降至最低限 度。这样做可以更紧密地跟踪对应用程序进行的任何更改,并且减轻更新和卸载 应用程序的问题。 部署智能客户端应用程序时,微软提供了多种选择。这些选择包括旧: 无接触部署。使用该方法时,可以将文件复制到w 曲服务器,然后当 河海大学硕士研究生毕业论文基于智能客户端的m i s 系统的研究与实现 用户单击相应的链接时,n e tf r a m e w o r k 会自动将应用程序及其从属程 序集下载到客户端。 带有应用程序更新存根的无接触部署。使用该方法时,可以使用无接触 部署下载应用程序存根,该存根随后会将应用程序的其余部分下载到本 地硬盘刚。 从文件共享运行代码。使用该方法时,可以将文件复制到文件共享,然 后从该共享中运行应用程序。 x c o p y 。使用该方法时,可以将文件直接复制到客户端。n e tf r a m e w o r k 允许应用程序及其所有从属程序集位于单个目录结构中,因此无须在客 户端上注册任何组件。 w i n d o w s 安装程序软件包。使用该方法时,可以将应用程序的文件打包 到w m d o w s 安装程序软件包中,然后将该软件包安装到客户端上。 更新智能客户端应用程序时,微软也提供了多种选择。这些选择包括: 无接触部署。更新的程序集被添加到w e b 服务器,以供客户端自动下 载。 自动更新。应用程序被配置为自动从服务器下载并安装更新。 从文件共享获取更新。更新的程序集被添加到网络共享,以供客户端自 动下载。 x c o p y 更新。更新被直接复制到客户端。 w i n d o w 0 安装程序软件包部署。更新了w i n d o w s 安装程序软件包,创 建了新的软件包,或者使用修补软件包更新客户端。 无论使用何种部署和更新方式都可以弥补原来c s 程序部署和更新难的问 题,具体使用何种方式与具体的项目和环境有关。 2 2 5 安全机制 智能客户端是分布式应用程序,通常跨越多种不同的产品和技术。管理这些 应用程序中的安全性是一件极具挑战性的事情。在服务器端,需要采用一种方法 来保护网络、服务器本身及其应用程序。在客户端,应集中于利用平台( 其中包 括操作系统和m i c r o s o f t n e tf r a m e w o r k ) 的安全特性、客户端代码可以执行 的特权操作( 代码访问安全) 以及与服务器平台( 域) 和服务器应用程序的交互。 有效的安全性取决于深层防御方法。在智能客户端设计时,微软考虑安全性 的各个方面非常重要,其中包括以下几个方面【2 1 】【2 2 1 1 2 3 : 身份验证。这唯一地标识了客户端应用程序的用户,从而只有经过认可 的用户才能访问应用程序的全部或部分。 河海大学硕士研究生毕业论文基于智能客户端的m i s 系统的研究与实现 授权。这确定唯一标识的用户可以执行的操作。这些操作可以是任务, 也可以是对授予经过身份验证的用户访问权限的资源进行的操作。 数据验证。这确保只有适当的和有效的数据才能被应用程序接受。如果 允许任何用户输入而不首先验证数据,则攻击者就可以通过插入恶意的 输入来危及应用程序的安全。 保护敏感数据。这意味着确保应用程序存储和传输的敏感数据( 例如密 码或机密的商业数据) 是安全的。对敏感数据进行加密可以确保数据不 可能以明文形式获得;取决于算法的选择,这还可以确保信息不会被篡 改,从而维护其完整性。 审核和目志记录。这包括保存对事件和用户操作的记录。应该考虑将关 键的用户操作或活动记录在服务器上,或者安全地记录在客户端上,因 为客户端计算机上的日志可能被篡改或清除。 异常管理。这确保应用程序适当地处理异常和失败,并且返回用户友好 的非敏感信息。异常详细信息可以记录到事件日志或应用程序日志中。 更改和配置管理。这确保跟踪r r 环境的配置以及对其进行的任何更改。 通过这样做,可以查看是否出现任何未经授权的更改,并且确定任何经 授权的更改所涉及的安全性含义。 2 3 智能客户端的支撑技术 2 3 1x m lw e bs e r v i c e x m lw e bs e f v i 是在i n t e m e t 上进行分布式计算的基本构造块。开放的标 准以及对用户和应用程序之间的通信和协作的关注产生了这样一种环境,在这种 环境下,x m lw e bs e r v i c e 成为应用程序集成的平台。应用程序是通过使用多个 不同来源的x m lw e bs e r v i c e 构造而成的,这些服务相互协同工作,而不管它 们位于何处或者如何实现。x m lw e bs e r v i c e 体系结构的主要优点之一是:允 许在不同平台上、以不同语言编写的各种程序以基于标准的方式相互通信。 有多少个构建x m lw e bs e r v i c e 的公司,就可能有多少种x m lw e b s e r v i c e 定义。不过几乎所有定义都具有以下共同点 6 1 p 1 1 1 2 4 1 : ) m 几w e bs e r v i c e 通过标准的w e b 协议向w 曲用户提供有用的功能。多 数情况下使用s o a p 协议。 x m l w e bs e r v i c e 可以非常详细地说明其接口,这使用户能够创建客户端应 用程序与它们进行通信。这种说明通常包含在称为w e b 服务说明语言( w s d l ) 文档的x m l 文档中。 河海大学硕士研究生毕业论文 基于智能客户靖的m i s 系统的研究与实现 x m lw e bs e r v i c e 通过注册,以便潜在用户能够轻易地找到这些服务,这是 通过通用发现、说明和集成( u d d i ) 来完成的。 ) 0 咀。w e bs e r v i c e 主要有下几种技术支撑: s o a p s o a p 是儿w 曲s e r v i c e 的通信协议。s o a p 是一种规范,用来定义消息 的x m l 格式,这是规范中所必需的部分。包含在一对s o a p 元素中的、结构正 确的) 几段就是so | a p 消息。 s o a p 规范的其他部分介绍如何将程序数据表示为x m l ,以及如何使用 s o a p 进行远程过程调用( i 冲c ) 。这些可选的规范部分用于实现r p c 形式的应用 程序,其中客户端将发出一条s o a p 消息( 包含可调用函数,以及要传送到该 函数的参数) ,然后服务器将返回包含函数执行结果的消息。s o a p 还支持文档 形式的应用程序,在这类应用程序中,s o a p 消息只是x m l 文档的一个包装。 文档形式的s o a p 应用程序非常灵活,许多新的x m lw e bs e r v i c e 都利用这一特 点来构建使用r p c 难以实现的服务。 s o a p 规范的最后一个可选部分定义了包含s o a p 消息的肌p 消息的样 式。此h t t p 绑定非常重要,因为几乎所有当前的o s (

温馨提示

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

评论

0/150

提交评论