(计算机应用技术专业论文)基于面向服务和智能客户端技术的野外监测协助系统.pdf_第1页
(计算机应用技术专业论文)基于面向服务和智能客户端技术的野外监测协助系统.pdf_第2页
(计算机应用技术专业论文)基于面向服务和智能客户端技术的野外监测协助系统.pdf_第3页
(计算机应用技术专业论文)基于面向服务和智能客户端技术的野外监测协助系统.pdf_第4页
(计算机应用技术专业论文)基于面向服务和智能客户端技术的野外监测协助系统.pdf_第5页
已阅读5页,还剩54页未读 继续免费阅读

(计算机应用技术专业论文)基于面向服务和智能客户端技术的野外监测协助系统.pdf.pdf 免费下载

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

文档简介

中文摘要 随着社会经济的不断发展,随着环境法规制度的不断健全,环境监测业务日 趋规范化。传统的、简单的人工管理显然己无法满足环境监测业务信息化的需要。 环境监测部门强烈需要一个功能完备的、支持在线离线操作、易于部署的智能终 端,以满足野外工作人员环保监测的需要。 s m a r tc 1 i e n t 技术可以满足以上需求,它可以很好的将c s 模式和b s 模 式应用的优点结合在一起,自动灵活地升级和更新客户端应用程序,简化了系统 地维护;s m a r tc 1 l e n t 还可以充分利用本地的计算资源,将处理的载荷合理的 分配给系统中的每一台计算机,从而提高系统的响应速度和性能。s o a 是一个基 于标准的组织和设计方法,它利用一系列网络共享服务,使信息技术能更紧密地 服务于业务流程。通过采用能隐藏技术复杂性的标准化界面,s o a 能够提高信息 技术资产的重用率,从而加快了开发。面向服务的体系结构( s o a ) 的出现意味 着客户端应用程序能够利用许多已经存在的有效服务。所有这些服务都是符合业 界标准的,因而能够被方便地集成到智能客户端应用程序中去。 本文从企业应用系统的角度讨论了如何利用s m a r tc l i e n t 技术和s o a 的设 计理念构建环保监测智能终端系统f i e l da s s i s t a n ts e r v i c et r a c k i n gs y s t e m ( 简称f a s t ) ,协助远程采样人员顺利管理所有环保监测点,并通过电子设备收 集所有环保数据。讨论了如何构建高效s o a 在线离线构架,如何利用w e bs e r v i c e 进行数据同步,以及零接触部署,并在n e tf r a m e w o r k 2 0 平台上加以实现。 目前,f a s t 系统的关键部分已经基本实现,并在全美部分污水处理厂及环保 机构投入使用,提高了环保工作的质量,受到了用户的一致好评。 关键词:s o a ;智能客户端;n c t 行a m e w o r k 2 0 ;零接触部署;数据同步。 a b s t r a c t w i t ht h ed e v e l o p m e n to ft h es o c i e t ya n dt h eh e a l t h i n e s so ft h ee n v i r o n m e n t a l r e g u l a t i o n sa n dl a w s ,t h ei n s p e c t i o n so f t h ee n v i r o n m e n t a lb u s i n e s sb e c o m em o r ea n d m o r es t a n d a r d i z e d t r a d i t i o n a ls i m p l ea r t i f i c i a lm a n a g e m e n tc a nn o tl o n g e rf i tt h e i n f o r m a t i o nr e q u i r e m e n to ft h ed e v e l o p m e n to ft h ee n v i r o n m e n t a li n s p e c t i o n t h e e n v i r o n m e n td e p a r t m e n ti n t e n s i v e l yn e e d sas e l f - c o n t a i n e d ,n e t w o r kc o n s c i o u sa n d e a s y - d e p l o y m e n ts m a r tt e r m i n a lt os a t i s f yt h er e q u i r e m e n to ft h ef i e l di n s p e c t i o nf o r t h ee n v i r o n m e n t a li n s p e c t o r s m a r tc l i e n ti ss u c hak i n do ft e c h n o l o g yt h a tc a l ls a r i s f yt h ee n t i r er e q u i r e m e n ta s b e f o r e as m a r tc l i e n ti sa l la p p l i c a t i o nt h a tu s e sl o c a lp r o c e s s i n g ,c o n s u m e sx m l w e bs e r v i c e sa n dc a nb ed e p l o y e da n du p d a t e df r o mac e n t r a l i z e ds e r v e r w h i l e t h e n e tf r a m e w o r k ( w i n d o w sf o r m s ) a n dt h e n e tc o m p a c tf r a m e w o r k p r o v i d e t h ea b i l i t yt od e v e l o ps m a r tc l i e n t sw i t he a s e ,o t h e rt e c h n o l o g i e sc a np r o v i d es m a r t c l i e n ta p p l i c a t i o n sb yu t i l i z i n gt h es a m ea r c h i t e c t u r e s m a r tc l i e n ti st h ec o n c e p to f a r c h i t e c t i n gy o u ra p p l i c a t i o ns o l u t i o ni n t oas m a r t ,f l e x i b l ea n dc o n v e n i e n tp l a t f o r m t h a t u t i l i z e sw e bs e r v i c e sf o rc o m m u n i c a t i o n s o ai sa na r c h i t e c t u r a ls t y l ew h o s e g o a li st oa c h i e v el o o s ec o u p l i n ga m o n gi n t e r a c t i n gs o f t w a r ea g e n t s as e r v i c ei sa u n i to fw o r kd o n eb yas e r v i c ep r o v i d e rt oa c h i e v ed e s i r e de n dr e s u l t sf o ras e r v i c e c o n s u m e lb o t hp r o v i d e ra n dc o n s u m e ra r er o l e sp l a y e db ys o f t w a r ea g e n t so nb e h a l f o f t h e i ro w n e r s i n t h i sa r t i c l e ,w ew i l l ,f r o mt h ea p p l i c a t i o np o i n to fv i e w , d i s c u s sas m a r tc l i e n t s y s t e m w i t ht h es o ai d e a , f i e l da s s i s t a n ts e r v i c e t r a c k i n gs y s t e m ( f a s d , i m p l e m e n t e do nt h e n e tf r a m e w o r k2 0p l a t f o r m s ,f o c u s i n go nh o wt ob u i l dt h e e f f i c i e n ts o ao f f i i n ea r c h i t e c t u r e , h o wt ou s ew e bs e r v i c et os y n c h r o n i z ed a t aa n d c l i c ko n c ed e p l o y m e n t n o wt h em a i nw o r kh a sb e e nf i n i s h e da n dt h es y s t e mh a sb e e nu s e di nm a n yo ft h e e n v i r o n m e n t a lf a c i l i t i e sa n dr e c e i v e dm a n yg o o dr e s p o n s e sf r o mt h ec u s t o m e r s , w h i c h n o to n l yi m p r o v e st h eq u a l i t yo ft h ee n v i r o n m e n t a li n s p e c t i o nw o r kh u ta l s o a c c e l e r a t et h es t a n d a r d i z e de x e c u t i o no f t h ee n v i r o n m e n t a lr e g u l a t i o n k e yw o r d s :s o a ;s m a r tc l i e n t ;n e tf r a m e w o r k 2 o :c l i c k o n c e ; s y n c h r o n i z a t i o n 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的 研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得鑫壅盘翌或其他教育机构的学位或证 书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中 作了明确的说明并表示了谢意。 学位论文作者签名: 签字日期:沙6 年月雩锣日 学位论文版权使用授权书 本学位论文作者完全了解鑫洼盘鲎有关保留、使用学位论文的规定。 特授权鑫壅盘堂可以将学位论文的全部或部分内容编入有关数据库进行检 索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校 向国家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位论文作者签名:专醐 签字日期:腓6 月口日 导师签名: 签字日期: 天津大学硕士学位论文第一章环保野外监测面临的信息化问题 第一章环保野外监测面临的信息化问题 1 1 课题背景及意义 环境监测是环境保护工作的重要组成部分,环境监测人员到野外进行实际勘 查,获得河流,工厂等工业和农业污水,废气等采样数据。随着社会经济的不断 发展,环境保护问题不断提上议事日程。在美国,环保制度已经形成一个比较健 全的体系结构,各个州有自己的环保标准与策略,环保部门不但需要处理环保采 样业务,随时检查大气,水资源质量等基本问题,同时还担当执法者的角色,环 境监察员不但需要采样与监督检验,同时还需要根据采样数据的合格与否给企业 颁发环保许可证,环境监测业务量大,日趋复杂化、多样化,为环境采样数据的 准确性和采用监测工作的高效性提出了新的挑战,目前,美国的各大环保机关仍 然采用传统的、简单的人工管理,这显然已无法满足环境监测业务信息化的需要。 环境监测部门强烈需要一个与之对应的、支持在线离线操作、易于部署、安装在 t a b l e tp c 或者p o c k e tp c 上的智能终端以满足野外工作人员环保数据监测和采 样的需要。 野外工作的机动灵活性对环保工作提出的新需求如下: 1 任务定制,用户首先在母系统上,定制某项野外监测任务,并进行任务 分配。野外检测人员手持安装有智能客户端应用程序的t a b l e tp c 或者l a p t o p 在野外收集数据时,只能下载分配给自己的任务。 2 数据同步,系统够自动检测网络连接的存在,并保持本地数据库和服务 器数据库数据的一致性。目前全美各大环保机关都有自己的数据库系统,他 们纷繁众多,从d b 2 到o r a c l e 到s q l s e r v e r 不一而足,系统应该可以同步异 构数据库的数据,以满足不同业务平台的需要。 3 对于预先定制任务,野外检测人员使用t a b l e tp c 等智能设备数据录入到 本地数据库中,一旦任务完成,系统能够野外收集数据自动上传到服务器, 并将任务状态设为完成。 4 系统同时允许野外检测人员动态创建临时任务,录入数据并临时任务所 有信息,相关数据,上传到服务器上。 5 在线离线操作,野外工作性质决定,工作环境不能保证时刻在网络上, 系统应该能够提供离线功能,当用户离线是依然能够处理数据,当用户在线 时,系统自动将客户端数据与服务器数据同步。 天津大学硕士学位论文第一章环保野外监测面临的信息化问题 6 便捷的部署与更新,系统应提供最便捷的部署与更新策略,当应用程序 有新版本推出时,系统能够自动检测,自动更新,而无须用户手动进行配置。 环保野外监测协助系统( f i e l da s s i s t a n ts e r v i c et r a c k i n gs y s t e m 简称f a s t ) 在这个背景下应运而生,该系统在美国e n f o t e c h 公司研制开发,采用s o a 的设 计理念,使用的w e bs e r v i c e s 进行数据同步和身份验证,能够在异构数据库环 境下使用;运用x m l 技术自定义冲突处理;采用微软最新推出的智能客户端技 术( s m a r tc l i e n t ) 实现了在线与离线功能,在n e tf r a m e w o r k2 0 上实现了c l i c k o n c e 部署与自动更新检测,并采用v i s u a ls t u d i 0 2 0 0 5 研制开发。 自2 0 0 6 年三月本人参加f a s t 系统的研制开发以来,目前该系统的关键部分 已经基本完成,并且系统已经在许多大型环保机构投入使用,得到了用户的一致 好评,这不但提高了政府机关,和各企事业单位的工作效率和工作质量,而且有 利于环保法规制度的推行与实施,使得环保监测工作迈上了一个新台阶。 论文的主要工作如下: 1 面向服务架构( s o a ) 的研究 2 c s ,b s 模式与智能客户端的研究和比较 3 基于s o a 的智能客户端架构设计 4 环保野外检测协助( f a s t ) 系统的设计与实现 1 2 基本业务需求 1 数据同步 2 创建临时任务 3 信息查询 4 信息修改与录入 如图1 1 所示: 图1 - 1 系统需求用例 天津大学硕士学位论文第一章环保野外监测面临的信息化问题 1 3 使用基于任务的方法 基于任务的方法使用对象工作单元封装为用户任务。t a s k 对象负责处理用 户完成特定任务所需的状态、服务和用户界面交互。当设计和生成支持脱机操作 的智能客户端应用程序时,基于任务的方法尤其有用,因为它使可以脱机行为的 细节封装在单个位置。这使用户界面可以专门致力于解决与u i 有关的问题,而 不是致力于解决处理逻辑。通常,单个t a s k 对象封装( 由用户) 与单个独立工 作单元相关联的功能。任务的粒度和详细信息取决于确切的应用程序方案。对于 本系统,主要有如下任务: 1 数据监测 2 收集采样数据 3 创建临时许可证 4 创建监测点 对于上述每个任务,都实例化一个t a s k 对象并使用它来指导用户完成该过 程,存储所有需要的状态,与用户界面交互,并且与任何需要的服务交互。 当应用程序脱机工作时,它需要服务请求排队,并且可能使用暂定值或未确认的 值进行本地状态更改。在同步过程中,应用程序需要执行实际的服务请求,并且 可能进行更多的本地状态更改以确认服务请求的成功。通过该过程的细节封装在 单个t a s k 对象( 该对象服务请求放入队列中,并且跟踪暂定的和已确认的状态 更改) 中,可以简化应用程序的开发,隔离实现更改,并且能够以标准方式处理 所有任务。t a s k 对象可以通过各种属性和事件提供有关任务状态的详细信息, 包括: 1 p e n d i n g 指示该任务是挂起的同步 2 c o m p l e t e d 指示完成的百分比或者该任务标志为已完成 3 c o n f l i c t 指示在同步过程中发生了错误。其他属性产生冲突或错误的详细 信息 4 t a s ka v a i l a b i l i t y 当应用程序联机或脱机时,某些任务不可用;或者,如 果任务是某工作流或用户界面过程的一部分,则在已经完成作为先决条 件的任务之前,该任务可能不可用。可以该属性绑定到菜单项或工具栏 按钮的启用标志,以防止用户启动不适当的任务。 基于任务的方法的另一项好处是:它使应用程序可以致力于满足用户及其任 务的需要,从而可以产生更为直观的应用程序。 天津大学硕士学位论文第二章面向服务的智能客户端架构 第二章面向服务的智能客户端构架 2 1 当前的面向服务架构 每一家公司对w e bs e r v i c e s 都有自己的定义与发展目标如表l 所示,但就 技术的觏黠w e bs e r v i c e s 简而言之就是一个能够在互联网上提供分散式静算的 服务平台,它希望做到以下几个目标: 提供跨平台的一致互通性( i n t e r o p e r a b i l i t y ) 应用程序能更简单的整合网络上的服务 具备动态聚结的特色 能够在开放的w 曲环境所使用,同时也应苏要能够被辫多企业内部的专 有平台所使用。 表2 - lw e b s e r v i c e 的定义 厂商 w e bs e r v i c e s 定义 m i c r o s o rw e bs e r v i c e s 是n e t 的核心 s u nw e bs e r v i c e s 是网络构架中可置换的零件 i b m w e bs e r v i c e s 是电子商务应用的基础设施 b e aw e bs e r v i c e s 可充分发挥分散式服务的潜力 为了达到以上目的,在设计w e bs e r v i c e s 相关的时候就必须几点需求考虑 在内: 根据公认的标准协定( s o a p 、u d d i 、w s d l ) 使用最少的技术便能建构整倜架构平台 能够和低阶的应用程序整合 重心在资料消息( m e s s a g e ) 和文件的处理,而非应用程序介面( a p i ) 的 制订 针对这些需求设计出来的w e bs e r v i c e s ,会是一个具备松散耦合并能够互相 天津大学硕士学位论文 第二章面向服务的智能客户端架构 呼叫系结的组件,此外还可跨平台、跨语言,彻底解决异质平台信息交换的问题。 w e bs e r v i c e 运作方式如图2 1 ,服务提供者首先透过u d d i 注册提供他人使用 服务的服务描述( w s d l ) ,接着服务使用者可以去查询u d d i 其所需要的服务, u d d i 便会提供服务的w s d l 给使用者,最后使用者可根据此份w s d l 文件和 服务提供者进行服务的系结( b i n d i n g ) ,并使用s o a p 的消息格式来进行数据的 处理交换。 w e bs e r v i c e sr o l e s ,o p e r a t i o n sa n da r t i f a c t s 图2 - 1w e bs e r v i c e s 运作方式 2 1 1w e bs e r v i c e s 架构 在提到w e bs e r v i c e s 的时候可能有些人会误解这是专门提供给浏览器来浏 览网页( w e b ) 使用的,其实w e bs e r v i c e s 主要是根据w w w 所使用的技术及 通讯协议所制订出来的一个标准,其中使用的技术如w s d l 、s o a p 等都和常 见的网页使用的技术不同,只是这些技术通常会实做在各平台的w e bs e r v e r 上 面,因此会整个架构通称为w e bs e r v i c e s 。 一个完整的w e bs e r v i c e s 架构主要是几个模块化的组件所构成:数据所使 用的编码格式( s o a n ,描述语言( w s d l ) ,以及寻找服务定义的目录( u d d i ) 。 天律大学硕士学位论文第二章面向服务的智能客户端架构 透过图2 2 可看到整个w 曲s e r v i c e s 架构就是以这些不同的组件所组成并互 相沟通整合,因此可以重复的使用搭配这些组件而无须重新设计发明,由于单一 组件的功能和规格并不足以代表整个系统解决方案,在使用w e bs e r v i c e s 的时 候应该视需求来混合搭配使用这些组件。 图2 - 2w e bs e r v i c e s 系统组件 在一个完整的信息应用系统中会根据所需要的功能开发组件化的模块,如图 2 - 3 ,就系统管理功能而言会有q o s 、管理、安全加密等模块,就系统核心功能 而言会有最底层的通讯协议如h r r p 、f t p 等,消息编码的格式如s o a p 、服 务描述语言如w s d l 、发行服务的目录如u d d i 等。这些w e bs e r v i c e s 标准 组件提供了不同系统间交换数据的功能,此外由于这些组件规格全部都是世界共 通的标准,因此在开发这些组件的时候只要确保依循w 3 c 所制订的标准,就能 够确保系统可以和其它的系统进行数据的整合。 天津大学硕士学位论文第二章面向服务的智能客户端架构 w s f l 甜a 靠c 专u d d i i n t e r o p e r a b l eb a s e 。 w 曲s 。v i 。5 甜k w s d l s o a p h t t p 阿p 。e - m a i l 。 朗q i i o p e t c 图2 - 3 信息系统中的w e bs e r v i c e 组件架构。 2 1 2w e bs e r v i c e s 组成组件 2 1 2 1s o a p s o a p ( s i m p l eo b j e c ta c c c s sp r o t o c 0 1 ) 是w e bs e r v i c e s 用来传递数据的编 码格式,目前w 3 c 已经制订了s o a p1 2 的规格,相关标准可参考 h u p :w w w w 3 o m f f a p ,s o a p 的目的在提供r p c ( 远程过程调用) 的功能, 在s o a p 中主要是以标准x m l 的方式来制订一个消息的格式,一个完整的 s o a p 封包中会使用h e a d e r + b o d y 来标示消息的各个部分内容,此外会使用 h r r p 、s m t p 等网络通讯协议来进行数据的系结交换。请特别注意s o a p 的标 准和底层的网络通讯协议无关,因此只要根据s o a p 规格产生出s o a p 文件之 后,接下来不论使用网络上任何通讯协议都可以进行s o a p 文件的交换,只要 双方彼此都能根据所选择的通讯协议交换数据即可,如图2 - 4 。 天津大学硕士学位论文 第二章面向服务的智能客户端架构 s e r v i c er e q u e s t e r r e q u e s t ( s e r v i c ei n v o c a t i o n ) 图2 - 4 s o a p 运作方式 s e r v i c ep r o v i d e r s o a p 协议是跨语言、跨平台的,因此各家厂商在实做w e bs e r v i c e s 相关 开发工具都应该遵循w 3 c 所制订标准,以便产生出能够互相交换的s o a p 文 件。由于s o a p 在设计之初有一个很重要的前提一简单,因此s o a p 完整的 规格书内容并不多,此举提供了厂商及开发人员很大的弹性及扩充性来实做相关 的开发工具。一个w e bs e r v i c e s 的服务会谈期间通常会包含要求和响应等两种 消息,而这些消息就是使用s o a p 格式来进行编码。一个s o a p 会定义并包装 成一个信封( e n v e l o p e ) 如图2 - 4 ,这个信封内包含有s o a p 规格所制订的各种 消息,如h e a d e r 、b o d y 等。信封是一个s o a p 文件的根元素,使用 的x m l 方式来撰写,其内可放置如h e a d e r ( 选择性) 、b o d y 、n a m e s p a c e ( 选择 性) 、编码规则( 选择性) 等数据,如图2 5 。 图, - 5 s o a p 组成元素 天津大学硕士学位论文第二章面向服务的智能客户端架构 图2 , - - 6s o a pe n v e l o p e 由于x m l 是以纯文字的方式来撰写内容,因此在处理二进制的数据如影 像、多媒体等就必须使用序列化( s e r i a l i z a t i o n ) 的方式数据编码后放入s o a p a t t a c h m e n t 中,常用的方式有b a s e 6 4 编码,e m a i l 附件常用的m i m e 或使 用微软所提出的d i m e 等规格,d i m e 架构图可参考图2 - 6 。 天津大学硕士学位论文第二章面向服务的智能客户端架构 v n :i o n” t y p e 只e n 时 o p i o 胁l 剖垮m 1 8【 f o r m a t ol o 蝌h h 触l | g l h o 蚺t 掣味h o 。l 螂 国 椭 o 音墉 图2 - 7 d i m e 架构 2 1 2 2u d d i u d d i ( u n i v e r s a ld e s c r i p t i o n 。d i s c o v e r ya n di n t e g r a t i o n ) 是由各大厂商提出 来的一个标准,提供了一组标准的规范用于描述和发现服务,还提供了一组基于 因特网的实作方式,它让服务提供者可以欲提供的服务公布到网络上让客户使 用,如此不仅加速了b 2 b 电子商务的运作流程,同时由于其开放的标准允许各 大小厂商都能够使用此一技术,因此能够很快速的发展。 u d d i 主要提供以下几个功能: 描述商业及服务 探索其它可以提供所需服务的公司 整合其它商业服务 u d d i 的核心主要包含两部分,第一是技术规格,第二是注册储存库。简而言之 可以把u d d i 当作电话簿的的黄页,它主要记录服务提供者所注册的服务信息, 并提供给使用者自行去查询呼叫服务者的服务。 图2 8 为u d d i 的运作方式,使用者会使用s o a p 封包来要求u d d i 的数 据,接着u d d i 储存库中的n o d e 会解译此s o a p 封包并根据里面的内容去 查询u d d l 储存库的数据,如果有需要的话一个使用s o a p 编码格式的封包消 息会回传给使用者。 天津大学硕士学位论文第二章面向服务的智能客户端架构 图2 - 8u d d i 消息在客户端和注册中心之间交换过程 图2 - 9 说明了如何资料送入u d d i 注册中心,顾客又如何去发现和使用这一消 息。u d d i 注册中心建立在顾客提供的数据的基础之上,要使数据能在u d d i 中 物尽其用需要几个步骤。如第1 步中所示,软件公司和标准组织要定义在u d d i 中注册的行业或企业的规范时,会向u d d i 发布有用的消息,这些规范叫做技 术模型或者更常见的说法是m o d e l 。 在第2 步中,公司会注册关于其商业及其提供的服务的描述。如第3 步中所示, u d d i 注册中心会给每个实体指定一个在程序中唯一的识别项,称为一通用识别 项( u n i q u eu n i v e r s a li d e n t i f i e r ,u u i d ) k e y ,从而能随时了解所有这些实体的 情况。u u i dk e y 必须是唯一的,并且在一个u d d i 注册中心里面永远都不会 变化。这些k e y 像是某种格式的随机十六进制字符串( 例如 c o b 9 f e l 3 1 7 9 f - 4 1 3 d - 8 a 5 b 5 0 0 4 d b 8 e 5 b b 2 ) ,可以利用这些k e y 来参照与之 相关联的实体,在一个注册中心中建立的u u i dk e y 只在该注册中心的上下文 中有效。 第4 步,诸如电子交易场所( e m a r k e t p l a c e ) 和搜寻引擎等其它类型的客户端 与商业应用程序( 例如,基于工作流程聚合起来的w e bs e r v i c e s ) 使用u d d i 注 册中心来发现它们感兴趣的服务。接着其它的企业就可以呼叫这些服务,并进行 简单的动态整合。 天津大学硕士学位论文第二章面向服务的智能客户端架构 厶团 2 凰 醣币璺一 咖一 u d d xb u s i n e s sr e g i s t r y h a r k e t p b k e ks e a r c h e n g i n e s ,a n db u s i n e e s a p p s q u e r yt h er e g i s t 吖协 d i s c o v e r ,e r v c e ia to 峨e r m p n l l 国圃5 鑫 3 麓等a p r o g r a m - m a t i c a l l yu 轴n i q u e 抽b u s i n b e s b su 硼一池t 惋l l i d e n l i f i e re a c hs e r v k ta n d 酿reg b o l l o 。 协 。 b 轴e _ 蚌付a”9 7 一 e a s i e rm t e g r a n o n 图2 - 9 u d d i 工作原理 目前有几家厂商提供了测试用的u d d i 储存库,如m i c r o s o f t 、i b m 、s a p 、n 1 r r 、 n o v e l l 等,可以开发好的w e bs e r v i c e s 地址公布到u d d i 让其它有兴趣的 使用者呼叫使用,此外也可透过一些程序a p i 的方式自动化搜寻并呼叫系结服 务,相关开发细节请参考各家u d d i 厂商所提供数据。在w i n d o w ss e r v e r2 0 0 3 中也内建了免费的u d d is e r v e r ,如表2 2 所示。 表2 - 2u d d i 服务器列表 厂商服务地址 h a p :u d d i m i c r o s o f t t o m m i e r o s o f t i b m h t t p :w w w - 3 i b m c o m s e r v i c e s u d d i s a p h a p :u d d i s a p t o m n t t h t t p :w w w n t t c o m u d d i n o v e l l h t t p :d e v e l o p e r n o v e l l c o m u d d i 天津大学硕士学位论文第二章面向服务的智能客户端架构 2 1 2 jw s d l w e bs e r v i c ed e f i n i t i o nl a n g u a g e ( w s d l ) 是描述w e bs e r v i s 的标准 x m l 格式,w s d l 由m i c r o s o r 、a r i b a 、i n t e l 、i b m 等开发商提出,它用一种 和具体语言无关的抽象方式定义了给定w e bs e r v i c e s 收发的有关操作和消息。 就其定义而言,不能把w s d l 当作一种对象接口定义语言,例如,c o r b a 或 c o m 等应用程序体系结构就会用到对象接口定义语言,但w s d l 保持协议中 立,且内建了对s o a p 的支持,因此与s o a p 建立了不可分割的联系。 w s d l 和s o a p 相同都使用x m l 的方式来撰写,主要用来描述服务的定义与 服务沟通的方式,它与实做程序语言或平台无关,并使用x s d 当为预设的定义 语言,详细的规格书可参考w 3 c 网站。 一份w s d l 文件中具备以下几个元素,从中可看到组成w s d l 的各个元素定 义: d e f i n i t i o n s :文件中的根元素,其它的元素都会包含在d e f i n i t i o n s 之中。它定义 了所要描述w e bs e r v i c e s 的名称,同时也宣告了在这份文件中所有会使用的命 名空间。 t y p e s :用来描述文件中会使用到的数据型别定义,预设使用x s d 语法。 m e s s a g e :用来描述会被传递数据的抽象型别定义,定义了单向( 请求或者响应) 的消息内容。 o p e r a t i o n :被s e r v i c e 支持动作的抽象叙述,会被包含在p o r t t y p e 或b i n d i n g 中。 p o r t t y p e :被一个以上的终端点所支持的抽象o p e r a t i o n ,会结合多个m e s s a g e 元 素以便支持单向或双向的数据传递。 b i n d i n g :针对特定p o r t t y p e 的通讯协议与数据格式规格,此外允许不同的元素 可以和不同的通讯协议系结( s o a p , h t t p g e t p o s t m i m e ) 。 p o r t :定义一个终端点,以描述结合了b i n d i n g 与网络地址。 s e r v i c e :相关终端点的集合,用来定义欲呼叫特定服务的地址。 天津大学硕士学位论文第二章面向服务的智能客户端架构 w s d l 的根元素 = ;预传送的资料类型 氟 , 一 一 ,。一。一? i 消息体 豢、。一。一一。一。,;一:。? 一一一= 。二一二女 圈2 - 1 0 w s d l 组成兀素 服务提供者开发完服务之后需要该服务的定义发布到u d d i 储存库,因此需 要在w s d l 与u d d i 储存库定义彼此的关系,如图2 1 l ,左方可看到w s d l 所实做的服务内容及服务接口,在实做服务中的i m p o r t 元素会对应到服务接口 的元素定义中;右方可看到u d d i 储存库中的元素定义,其中的t m o d e l 是用 于定义服务的技术规范,w s d l 中的s e r v i c e 标签会对应到u d d i 中的 b u s i n e s s s e r v i c e ,p o r t 会对应到b i n d i n g t e m p l a t e ,最后服务的接口在u d d i 中 会作为一个t m o d e l 发布出去。 天津大学硕士学位论文第二章面向服务的智能客户端架构 图2 - u w s d l 与u d d i 对应关系 了解了s o a p 、u d d i 、w s d l 等组件的用途之后,图2 1 2 说明了这三者 彼此的关系。首先客户端会透过u d d i 搜寻所需要的服务,u d d i 会服务提供 者的w s d l 地址提供给客户端,接着客户端会使用此w s d l 文件找寻服务者 实际的位置,服务者会服务的详细内容回传给使用者,以上几个阶段都是在设计 阶段或动态执行的;最后客户端会使用开发工具来使用并系结此w s d l 文件所 提供的服务,双方便会开始使用s o a p 来做数据的交换传递,这个阶段则是实 际使用w e b s e r v i c e s 的过程。可以看到这中间所有的过程所使用的协议,h r r p 、 s o a p 、u d d i 、w s d l 、x m l ,全部都是跨平台、跨语言的国际标准,因此客户 端、服务端双方即便使用不同的作业平台或开发环境,都可以无碍的使用或提供 服务的内容。 天津大学硕士学位论文第二章面向服务的智能客户端架构 图2 - 1 2s o a p 、u d d i 、w s d l 运作图 2 1 3 面向服务架构研究( 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 ) 2 1 3 1 商业价值的考虑 以上介绍了w 曲s e r v i c e 的组成架构及运作原理,同时也介绍了s o a p 、 u d d i 、w s d l 等核心元素的用途。然而除了基础的w e bs e r v i c e s 之外,在现 今复杂的商业交易环境中,商业流程需求随时在变动,单纯依赖着这些技术导向 的方法是不够的。企业需要一个能够不断创造商业价值的信息架构,抽象的商业 逻辑快速转化为实体的信息系统商业流程,因此s o a 营运而生。 图2 1 3 说明了商业逻辑上所需要的功能如何对应到信息架构中的组件,通 常商业环境会有信息、功能、操作等需求,可以将这些需求分别对应并运用到信 息架构中的信息、应用、和技术等子架构中,这些信息子架构之间会透过一些信 息存取组件和部署组件来互相沟通。通过这样的方式可以将商业上所需要的各种 需求切割出来,并分别在信息系统中逐一实现。 2 1 3 2 目前的信息系统 通常,软件人员从业务所有者手中接过订单,然后拿出侧重于应用程序或侧 重于集成的信息系统解决方案,然后,管理和资金模型促使企业和信息系统开发 人员竭尽所能去满足特定的业务单元或部门的需求。这种方式导致信息系统在一 天津大学硕士学位论文第二章砸向服务的智能客户端架构 个企业或业务单元中部署多个执行相同任务的系统。重复体现在基础架构服务 ( 比如身份验证、单点登录) 、数据市场( d a t am a r t s ) 以及应用程序( 打包的和定制的, 比如销售自动化( s a l e sf o r c ea u t o m a t i o n ,s f a ) 和订单管理) 上。由于业务流程的改 变或者收购造成的调整而引发的对该产品组合的修改会非常复杂。 在最好的情况下,随着每个业务单元或部门都实现了自己的解决方案,软件 开发团队使用点对点或e a i 方法来集成系统,应用程序连接到u p s t r e a m 和 d o w n s t r e a m 系统。为了跟踪整个业务流程的事务,他们在应用程序中传播一些 键值一尽管不一致一并创建多个操作上的数据存储区( 每个业务单元一个) 以跟 踪关键性能指标。为了提供无缝的用户体验,信息部门会在业务所有者的请求下, 构建门户应用程序来连接多个后端应用程序、数据市场和主数据( m a s t e rd a t a ) 。 虽然从架构的角度来看这种最佳情况解决方案非常有效,但是它极其复杂,且维 护成本很高,当企业迫于压力要增加收益而降低成本时,这种方法的维护成本就 显得尤其高。抛开收益、成本和实现不谈,大多数企业和信息部门主管都同意的 基本业务原则是业务流程必须能够使他们与竞争者区分开来。对于一些企业来 说,区分点是他们处理供应链的方式。而另一些企业则依赖于新的革新性的产品 推向市场的能力。 鼬镕# $ c o m p l e x i t y 图2 - 1 3 企业需要快速达到目标 但是,企业和i t 操作团队的成员获得流程竞争优势的方法往往有很大区别。 例如,一些企业操作团队喜欢演示速效方案( q u i c kw i n s ) 来验证一种方法,而i t 操作团队则宁愿构建基础架构。两个团队的正确答案很可能是一种s o a 方法。 天津大学硕士学位论文第二章面向服务的智能客户端架构 b u s i n e s sp r i o r i t yi tp r i o r i t y 图2 - 1 4 团队的区别 s o a 是一种业务操作策略,它利用信息来实现诸如提高总体收益、提高客 户满意度以及改进产品质量之类的目标。企业和软件开发团队需要相互合作,共 同定义策略和路线图,以便实现既定目标。 采用s o a 需要信息技术部门鉴定交付业务解决方案所需的服务基础架构。 向企业演示速效方案以展示其价值,从而使企业采用这些速效方案,这也非常重 要。因为服务基础架构基于粗粒度、松散耦合和基于标准的服务这些s o a 原则, 所以它能够使信息技术部门或软件开发者保持主动。通过为软件本身提供全局解 决方案,降低应用程序和基础架构复杂性,提高业务服务的重用和服务编排能力, 它使信息技术能够及时响应不断变化的业务需求。总而言之,这种方法使信息技 术部门机构能够通过自身和业务的转换来应对市场挑战。 2 1 3 3s o a 概观 可以把w e bs e r v i c e s 当作是信息应用系统中的血肉,而s o a 则是其整体 的骨干。s o a 简单的定义可以说是一个能够动态连结资源的系统,同时各种资 源会以多个独立服务( a u t o n o m o u ss e r v i c e s ) 的形式提供,并透过标准的作法取用

温馨提示

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

评论

0/150

提交评论