




已阅读5页,还剩63页未读, 继续免费阅读
(计算机软件与理论专业论文)一种支持服务动态装载的sca框架扩展方案及其应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一种支持服务动态装载的s c a 框架扩展方案及其应用 摘要 服务组件架构s c a ( s e r v i c ec o m p o n e n ta r c h i t e c t u r e ) 是一组规范,由 i b m 、b e a 、o r a c l e 、s a p 等国外著名企业参加的o s o a ( o p e ns e r v i c e o r i e n t e da r c h i t e c t u r e ) 组织起草并规范。s c a 描述了利用面向服务架构 ( s o a ) 来构建应用程序和系统的模型。s c a 的基本思想是将业务功能作为 一系列服务来提供,这些服务组合到一起,以创建满足特定业务需要的解 决方案。s c a 的关注点在于服务与服务之间的交互,即服务与服务的合成。 o s g i ( o p e ns e r v i c eg a t e w a yi n i t i a t i v e ) 提供了基于j a v a 平台一种面向 对象、基于组件的计算环境。o s g i 提供了一种组件模型,可以为构建s c a 组件提供一种实现规范,而o s g i 的动态装载应用的特点可以增加s c a 架 构的实用性。s c a 与o s g i 相结合,成为业界下一步的研究热点。 本文基于对s c a 和o s g i 的研究,根据已有的s c a 和o s g i 结合模式, 提出一种支持服务动态装载的s c a 框架扩展方案m d s c a & o s g i 4 s e i ,着 重解决在s c a 架构中引入o s g i 服务动态装载性的问题。该方案对s c a 和o s g i 结合中涉及的不同逻辑层次的问题,采用分层的方法解决,并对 其中的服务管理层作详细研究。通过对o s g i 服务注册机制的模拟,在服 务管理层中引入服务集成中心s i c ( s e r v i c ei n t e g r a t i o nc e n t e r ) 机制,设 计了一组服务处理模块,并对s c d l 文件进行了扩展设计,使s c a 在服务 注册和服务动态引用方面更好的对s o a 支持,实现了服务的动态装载, 提高了s c a 的灵活性和实用性。 最后,以淮北矿业集团公司环保处环境管理信息平台为支撑,根据本 文提出的扩展方案对原有系统进行改进和应用,对其理论意义和应用价值 进行了验证。 关键词:服务组件架构,o s g i 框架,动态装载性, a 7 d y n a m i cl o a d i n gs u p p o r t e de x t e n s i o n a ls o l u t i o n o fs c af r a m e w o r ka n di t sa p p l i c a t i o n a b s t r a c t t h es e r v i c ec o m p o n e n ta r c h i t e c t u r e ,b r i e fn a m es c a ,i sas e to fs p e c i f i c a t i o n , d r a f t e db yt h eo s o a ( o p e ns e r v i c eo r i e n t e da r c h i t e c t u r e ) o r g a n i z a t i o na t t e n d e db y f o r e i g nb u s i n e s se n t e r p r i s e so ft h ei b m ,b e o r a c l e ,s a pe t c t h es c a d e s c r i b e sa w a yo fu s i n gt h es e r v i c eo r i e n t e da r c h i t e c t u r e ( s o a ) t os e tu pa p p l i c a t i o na n d s y s t e mm o d e l i ti sb a s e do nt h ei d e at h a tb u s i n e s sf u n c t i o ni sp r o v i d e da sas e r i e so f s e r v i c e s ,w h i c ha r ea s s e m b l e dt o g e t h e rt oc r e a t es o l u t i o n st h a ts e r v eap a r t i c u l a r b u s i n e s sn e e d t h es c ac o n c e r n st h ec o m m u n i c a t i o na m o n ys e r v i c e s ,t h e nt h e s y n t h e s i so fs e r v i c e s t h eo s g i ( o p e ns e r v i c eg a t e w a yi n i t i a t i v e ) p r o v i d e sak i n do fc a l c u l a t i o n e n v i r o n m e n ta c c o r d i n gt oj a v a , o b j e c t o r i e n t e da n db a s e do nc o m p o n e n t t h eo s g i p r o v i d e sak i n do fc o m p o n e n tm o d e l ,w h i c hc a r lp r o v i d eas p e c i f i c a t i o no fb u i l d i n g s c a c o m p o n e n t ,a n do s g id y n a m i cl o a d i n gc a ns t r e n g t h e ns c ap r a c t i c a b i l i t y s c a a n do s g i s y n t h e s i z et o g e t h e r , h a v i n gb e c o m e an e x tp o i n to fr e s e a r c h b a s e do nt h er e s e a r c ho fs c aa n do s g ia n de x i s t i n gi n t e g r a t i o nm o d e lo ft h e m , t h i sd i s s e r t a t i o np u t sf o r w a r dad y n a m i cl o a d i n gs u p p o r t e de x t e n s i o n a ls o l u t i o no f s c af r a m e w o r k s c a & o s g i 4 s e i ,w h i c hf o c u e so nt h ei n t r o d u c t i o no fo s g i s e r v i c ed y n a m i cl o a d i n gm e c h a n i s mi n t os c a t h i ss o l u t i o nr e f e r st op r o b l e m so f d i f f e r e n tl o g i c a ll e v e l so nt h ec o m b i n a t i o no fs c aa n do s g i ,a n dd e a l sw i t ht h e s e p r o b l e m so nt h eu s eo fl a y e r i n g ,p a y i n gs p e c i a la t t e n t i o no nt h el a y e ro fs e r v i c e m a n a g e m e n t b ye m u l a t i n gt h eo s g is e r v i c er e g i s t r a t i o n ,i n d u c t sam e c h a n i s mc a l l e d s i c ( s e r v i c ei n t e g r a t i o nc e n t e r ) i n t os e r v i c em a n a g e m e n tl a y e r , d e s i g n s as e to f s e r v i c e sp r o c e s s i n gm o d u l e s ,a n dm a k e se x t e n s i o no fs c d lf i l e ,t om a k es c ac a r l s u p p o r ts o ab e t t e r i nt h ef a c e to fs e r v i c e r e g i s t r a t i o na n ds e r v i c e r e f e r e n c e d y n a m i c l y , r e a l i z e sd y n a m i cl o a d i n g o f s e r v i c e ,i m p r o v e sf l e x i b i l i t y a n d p r a c t i c a b i l i t yo fs c a f i n a l l y , u s i n gt h es o l u t i o n i nh b e m i sp r o j e c ta sap r o m o t i o n ,v e r i f i c a t et h e t h e o r i e sm e a n i n ga n dt h ev a l u eo fa p p l i c a i o no ft h i se x t e n s i o n a ls o l u t i o ni n t h i s d i s s e r t a t i o n k e y w o r d s :s e r v i c ec o m p o n e n ta r c h i t e c t u r e ,o s g if r a m e w o r k ,d y n a m i cl o a d i n g c h a r a c t e r i s t i c 图表清单 图2 1s o a 体系结构堆栈7 图2 2s c a 组件9 图2 3s c a 程序集1 1 图2 4s c aj 或。1 2 图2 5o s g i 服务平台框架1 5 图2 6o s g if r a m e w o r k 1 5 图2 7c l a s sl o a d e r 委托模型1 7 图2 8c l a s ss p a c e 1 7 图2 9b u n d l e 状态转移图1 8 图3 1s c a 的o s g i 绑定引用绑定2 3 图3 2s c a 的o s g i 绑定服务绑定2 3 图3 3s c a 与0 s g i 的结合2 4 图3 4 一种s c a 与o s g i 的结合方案。2 4 图3 5o s g i 宿主2 5 图3 6s ( 、a & o s g i 4 s e i 结构图2 8 图3 7o s g is e r v i c el a y e r 类图。2 9 图3 8s c a & 0 s g i 4 s e i 服务管理层结构图。3 0 图3 9 扩展s c d l 文件3 0 图3 1 0 服务引用流程图。3 1 图3 1 1 服务注册流程图3 1 图3 1 2 各模块间数据流向图3 2 图4 1 服务注册模块类图。4 4 图4 2 注册和注销时序图4 4 图4 3 扩展s c d l 解析模块类图4 5 图4 4 服务监听模块类图4 6 图4 5 服务引用模块类图4 7 图4 6 服务引用时序图4 7 图5 1 系统物理架构图4 9 图5 2h b e m i s 功能模块图5 0 图5 3s c a & o s g i 4 s e i 文件结构。5 1 图5 4s c a & o s g i 4 s e i 初始状态。5 4 图5 5 药品管理服务的状态变更图示5 5 图5 6 停止药品管理服务的提示5 5 图5 7 报表打印服务注册图示。5 5 图5 8 报表打印服务注册成功提示5 6 图5 79 水监测数据报表打印图示5 6 i i i 清单4 1c o m p o s i t e 文件中s e r v i c e 元素3 4 清单4 2c o m p o s i t e 文件中r e f e n c e 元素3 5 清单4 3c o m p o s i t e 文件中c o m p o n e n t 元素3 6 清单4 4c o m p o s i t e 文件中w i r e 元素3 6 清单4 5c o m p o n e n t t y p e 文件3 7 清单4 6s e a c o l e x s d 文件修改之一新增r e g i s t e r e d s e r v i c e 元素。4 1 清单4 7s c a c o r e x s d 文件修改之二修改c o m p o n e n t t y p e 的r e f e r e n c e 元素4 1 清单4 8s c a c o r e x s d 文件修改之三新增s e r v i c e c o m p o n e n t 元素4 2 清单4 - 9s e a c o r e x s d 文件修改之四修改c o m p o s i t e 的子元素4 3 清单5 - 1 用户管理s e r v i c e c o m p o n e n t 文件5 2 清单5 2 用户管理c o m p o s i t e 文件5 3 清单5 3 用户管理r e g i s t e r e d s e r v i c e 文件5 4 表4 - 1s c d l 文件扩展方案4 0 i v 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据 我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的 研究成果,也不包含为获得 金罡兰些太堂 或其他教育机构的学位或证书而使用过的 材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢 意。 学位论文作者签名:糯签字日期:z 。留年万月2 日 学位论文版权使用授权书 本学位论文作者完全了解金月巴王些太堂有关保留、使用学位论文的规定,有权保留并 向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅。本人授权业 工些太堂可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩 印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名: 签字日期:j 湖年石月7 z 日 学位论文作者毕业后去向: 工作单位: 通讯地址: 电话: 邮编: 酌们 射一 致谢 首先在此特别感谢我的导师袁兆山教授,本论文从选题、研究到写作 的整个过程中都是在袁老师的悉心指导和帮助才得以圆满完成。袁老师在 软件工程领域深厚的理论基础和对研究方向良好的把握,给我以深刻的指 引。袁老师渊博的知识、严谨并注重实际的治学态度和工作作风,给我以 深刻的启迪教育,使我在理论和实践两方面都得到了锻炼,受益匪浅。研 究生三年的学习生涯和导师对我的关怀让我永生难忘。 感谢合肥工业大学研究生院和计算机与信息学院里的各位领导和老 师,谢谢你们在这三年中对我的关心和教导。 同时,也非常感谢各位同学对我的支持、关心和帮助。 最后,感谢我的家人在这三年里对我的鼓励、支持和关爱。 朱雷 2 0 0 8 年5 月 第一章绪论 1 1 课题背景 面向服务架构s o a 1j 【2 l 【3 j 已经被提出很多年了,随着软件开发技术的 不断发展,其作为一种软件开发方法学已经得到广泛的认可,很多知名企 业和研究机构都对其作了深入的研究,并且提出了很多基于s o a 的技术 标准,例如应用较为广泛的w e bs e r v i c e s l 4 】【5 】6 】【引。由于s o a 具有的粗粒 度和松耦合的特点,使得不同的业务可以以跨平台、跨编程语言的服务的 形式进行通信和交互。 然而,由于业务而非技术的原因,目前业界内并没有提出一种真正实 现s o a 的统一标准和解决方案。各个厂商纷纷提出自己的s o a 实现规范, 但这些规范之间存在兼容性问题。为了解决这种无统一标准的问题,服务 组件架构【8 】1 9 】【1 0 】【1 1 l ( s e r v i c ec o m p o n e n ta r c h i t e c t u r e ,简称s c a ) 应运而 生。 1 1 1 服务组件架构s c a 概述 2 0 0 5 年1 1 月,由i b m 、b e a 、o r a c l e 、s a p 等国外著名企业联合成 立的o s o a 组织发布了s c a 0 9 规范。2 0 0 7 年3 月,o s o a 发布了正式的 s c a l 0 规范,由s c aa s s e m b l ym o d e ls p e c i f i c a t i o n i “1 、j a v ac o m p o n e n t i m p l e m e n t a t i o ns p e c i f i c a t i o n l l 3 j 等一系列详细规范组成,该规范描述了一种 利用面向服务架构( s o a ) 来构建应用程序和系统的模型。s c a 提供一种基 于s o a 的构建应用程序和解决方案的编程模型,其基本思想是将业务功 能作为一系列服务来提供,把这些服务组合到一起,以创建满足特定业务 需要的解决方案。这些组合起来的服务既可以是专门创建的新服务也可以 是已有系统的业务功能,以程序集的形式重用。s c a 模型具有跨平台、跨 编程语言的特性【8 】1 1 0 】【1 2 】,s c a 服务组件的实现方式可以是“传统的”编 程语言,如c + + 、j a v a 和b e p l ,也可以是脚本语言,如p h p 和j a v a s c r i p t , 甚至可以是s q l 语言。 s c a 是专门针对s o a 设计的,而不像j 2 e e 只是面向s o a 做了修改。 同w e bs e r v i c e s 也有很大的不同,s c a 关注的不仅是如何描述按照各种编 程模型和协议编写的组件,还有如何将这些组件合成为程序集,进而如何 将这些程序集以同样的方式合成为完整的服务。换句话说,s c a 更关注组 件与组件、服务与服务之间的交互和合成。 s c a 的意义在于,它是第一项承诺提供一个组合模型以启用服务网络 并支持构建下一代面向服务应用程序的技术,是未来用于构建大规模企业 组合应用程序的技术。 当前对于s c a 的研究主要在于实践方面,如何根据s c a 规范构建服 务组件,如何将s c a 组件合成为应用服务等。 1 1 2o s g i 概述 o s g i 1 4 l ( o p e ns e r v i c eg a t e w a yi n i t i a t i v e ) 是由一些家用网关相关产业 厂商于1 9 9 9 年组织成立的非赢利机构,旨在建立一个开放的服务规范, 为通过网络向设备提供服务建立开放的标准。o s g i 联盟发布了一系列 o s g i 规范标准,为网络设备定义了一个标准的、面向组件的计算环境。 可以从网络上的任何地方管理某一个设备上的软件组件的生命周期,可以 动态安装、更新和删除这些组件。软件组件是一些可以动态发现和使用其 它组件的库或者应用程序。o s g i 联盟已经为一些通用功能如h t t p 服务、 配置服务、日志记录服务、安全服务等开发了很多标准接口。 软件组件架构在软件开发过程中成为一个难题:需要开发和维护大量 的配置信息。使用标准化的o s g i 组件可以显著简化这个配置过程【”j 。 1 1 3s c a 与o s g i 的结合 s c a 和o s g i 在关注点上有很大不同:s c a 关注于组件与组件之间、 服务与服务之间的交互和合成,而o s g i 更关注于运行环境中组件和服务 的动态更新特性。但这并不影响s c a 与o s g i 的结合成为s c a 架构和o s g i 技术研究热点,因为s c a 与o s g i 的结合可以实现s c a 和o s g i 的优势互 补,充分发挥各自的优点,弥补各自的不足i l 6 。 s c a 和o s g i 的规范中,都有服务组件的概念,但是两者对组件的关 注程度不同。对于s c a 来说,服务组件对外是透明的,组件的实现可以是 各种方式,并没有一个统一的模型,因为s c a 更关注组件与组件之间的合 成;对于o s g i 来说,o s g i 规范定义了组件模型,详细描述了构建组件的 方法。o s g i 的组件模型为构建s c a 服务组件提供了统一的标准。 s c a 要求组件在运行时隔离,这一点o s g i 可以提供更好的支持。o s g i 在具体的j a v a 实现中,可以为不同的s c a 程序集c o m p o s i t e 提供不同的 c l a s s l o a d e r 。 同样,s c a 对于o s g i 也很有意义。o s g i 是基于j a v a 平台,具有平 台局限性,而s c a 架构是平台无关的。采用s c a 的o s g i 绑定,将o s g i 服务作为s c a 架构的外部服务引用,实现不同平台上应用程序对o s g i 服 务的引用。相应的,o s g i 服务也可以引用基于其它平台的s c a 服务。这 样,可以实现o s g i 的跨平台使用。 o s o a 组织在2 0 0 7 年3 月发布s c a 正式规范s c a l 0 的同时,还发 布了一些扩展规范,其中就是描述s c a 和o s g i 结合的白皮书p o w e r c o m b i n a t i o n :s c a ,o s g ia n ds p r i n g ) ) 1 1 6 j 。在这个白皮书中,描述了s c a 与o s g i 结合的基本理论。 当前,s c a 和o s g i 结合的研究已成为研究热点,但是目前业界并没 2 有提供一种实用的解决方案。o s o a 提出的自皮书也只是提供了理论上的 支持,实现的方法并没有提供。如何实现s c a 和o s g i 结合的应用架构, 将成为研究的重点。 1 2 课题的研究意义 作为新兴的软件开发架构,s c a 在各大权威厂商和研究机构的推动 下,经过业界不断地研究实现,将会成为构建下一代面向服务应用程序的 技术和构建大规模企业组合应用程序的技术。o s g i 架构技术在现代软件 开发中,已经发挥了很重要的作用。将o s g i 技术同s c a 架构结合起来, 可以更加完善s c a 架构,发挥各自的优点,这也成为当前研究的热点。 s c a 架构与o s g i 技术的结合将会推动软件开发方法学的变革,推动软件 的自动化生产,进而最终解决软件危机。 当前,对于s c a 和o s g i 合成方面的研究还处在理论阶段,业界没 有提供出实用的解决方案。因此,提出一种s c a 和o s g i 结合的解决方案 并加以实现,具有积极意义。 1 3 国内外研究情况 o s o a l l 7 j 组织于2 0 0 5 年1 1 月发布了s c a 0 9 规范,提出了s c a 的一 系列组件规范和组件绑定规范。2 0 0 7 年3 月,该组织发布了s c a 规范的 正式版本s c a l 0 。详细描述了s c a 架构、s c a 合成模型和各种组件实现 及绑定规范,以及组件的封装和部署规范。目前针对s c a 的研究多集中在 如何实现s c a 上,许多知名企业都提出了自己的实现架构,如i b m 的w p s 。 o s g i 联盟于1 9 9 9 年成立并发布了o s g i 规范,目前该规范的最新版 本是o s g is e r v i c ep l a t f o r mr 4v e r s i o n 4 1 1 1 8 j 。目前,o s g i 作为一种规范, 已被广泛应用于家庭服务网关、嵌入式系统、商业软件开发、移动设备开 发等方面。在软件开发方面,o s g i 的组件动态装载性和灵活性得到了很 大的重视,也有很多成功的案例,如e c l i p s e 的e c l i p s ei d e 。 目前,s c a 和o s g i 比较成功的案例有下面几个。 a p a c h et u s c a n y w j :t u s c a n y 是a p a c h ei n c u b a t i o n 的一个开源项目, 主要开发人员来自i b m 和b e a 。t u s c a n y 是s c a 和s d o 的最正宗的 开源项目。t u s c a n y 提供的只是一个s o a 基础设施,包括s c a 运行时 环境、s d o l l l l 和d a s l l 2 l 实现,t u s c a n y 项目本身并不提供s o a 开发和 管理i d e 插件。t u s c a n y 的问题域是解决怎么样来构造和组装服务的问 题。 e c l i p s es t p 2 0 l :s t p ( s o at o o l sp l a t f o r m ) 是由i o n a 、i b m 、b e a 、 s y b a s e 、o b i e c t w e b 等公司发起的,于2 0 0 5 年成为e c l i p s e 的第九个顶 3 级开源项目。s t p 的目的一方面是为了统一s o a 应用的开发、部署和 管理工具,并使这些工具标准化;另一方面就是提供一个可扩展的s o a 应用工具集,包括为开发人员提供构建服务、部署服务和维护服务的 工具集;为架构设计师提供装配( a s s e m b l e ) s o a 基础设施的工具集; 为系统管理人员提供维护、监控、和策略管理的工具集。 i b mw p s w a s 2 1 】1 2 2 】:i b m 在2 0 0 5 年1 0 月发布了w p s ( w e b s p h e r e p r o c e s ss e r v e r ) v 6 0 ,并为s c a 构件的开发和部署提供了可视化的集 成开发工具w i d ( w e b s p h e r ei n t e g r a t i o nd e v e l o p e r ) 。使用w i d 开发 集成项目,只要有一定基础编程经验或知识,就可以拖拉的方式,通 过图形化的方式进行s c a 构件的装配,以及w e bs e r v i c e 服务的开发。 普元( p r i m e t o n ) e o s l 2 3 l 【2 4 l :普元软件作为国内唯一一家参与 s c a s d o 规范制定的公司,将在其产品的下一个新版本e o s 6 0 中全 面支持s c a l 0 和s d o2 1 规范。普元e o s6 0 采用全新的产品架构和 实现,基于s c a 、s d o 等标准化技术,以面向构件( c o a ) 、面向服 务( s o a ) 为导向的一体化企业级基础应用平台。e o s 6 0 为实施s o a 应用提供了从构件设计、开发( 调试) 、部署、应用监管、维护与升级 的全生命周期管理功能。同时,e o s 还通过“基础应用框架 提供了 一套w e b 框架、菜单与组织机构权限管理功能,使得应用开发不再从 零开始。另外,e o s 提供符合s c a 规范的基础构件库提高了软件的复 用度,保证了s o a 应用实施的质量。 e c l i p s ee q u i n o x 2 5 j :e q u i n o x 是e c l i p s e 中的项目之一,e q u i n o x 遵 循o s g ir 4r i 规范。e q u i n o x 最为成功的案例就是e c l i p s ei d e ,得到 了业界的认可和广泛应用,反应出了e q u i n o x 作为o s g i 框架的优势。 e q u i n o x 目前是随着e c l i p s e 版本而发布的。 o s c a r 2 6 j :0 s c a r 是由o w 2f o r g e ( 原o b j e c t w e bf o r g e ) 的一个开 源项目,其目的是提供一个对o s g i 规范的完全实现,目前o s c a r 遵循 o s g ir 3 规范。o s c a r 主要面向的是嵌入式设备的开发,但它也非常适 合面向组件和面向对象的计算领域,例如以插件的形式提供扩展机制。 o s c a r 另一个目标就是实现应用程序的动态装载。 在s c a l 0 规范提出的时候,o s o a 组织还提出了一些扩展的规范, 其中就有针对s c a 架构、o s g i 技术和s p r i n g 相结合的规范 ( p o w e r c o m b i n a t i o n :s c a ,o s g ia n ds p f i n g ,但是没有提供具体的实现方法。 1 4 研究内容 本文主要研究s c a 架构和o s g i 技术,重点研究s c a 架构和o s g i 技术的结合,即如何实现s c a 架构同o s g i 技术的结合以完善s c a 架构。 4 提出一种支持服务动态装载的s c a 框架扩展方案,并根据该方案构建原型 系统并进行验证。主要包括以下几点。 1 ) 研究s c a 架构。研究s c a 装配模型和s c a 中各种组件的绑定机 制,研究构建普通s c a 系统的方法。 目前,对于s c a 的研究多是在实践方面。虽然s c a 规范提供了实现 s c a 系统的方法,但是具体实现s c a 应用系统还有很多需要研究的问题。 2 ) 研究o s g i 技术。研究o s g i 服务框架,o s g i 组件模型,o s g i 服 务注册机制等,提取出可以应用到s c a 架构中的技术要点。 o s g i 架构是一种比较成熟的软件开发技术,其中很多技术要点,诸 如:组件模型,组件动态的装载和卸载等,对于其它的软件开发架构有很 好的借鉴意义。 3 ) 研究s c a 架构与o s g i 技术的结合点和结合方法。提出一种s c a o s g i 结合的扩展方案。该方案的工作主要表现在在s c a 架构中应用o s g i 的代表性技术,以实现对s c a 的扩展和完善。 研究s c a 和o s g i 的结合点,包括服务组件的构建、服务组件的注册、 服务组件的交互等。在提出的方案中实现以o s g i 技术完善s c a ,例如服 务组件的构建,组件的动态装载和卸载,组件的注册等。 4 ) 根据提出的扩展方案对已有项目进行改进和应用,对其理论意义 和实践意义进行验证。 1 5 论文组织 全文由六章组成。本章为绪论,介绍研究研究课题涉及到的相关概念, 说明论文的主要内容和所做的工作以及论文的组织结构。 第二章s c a 架构和o s g i 技术相关理论及技术基础。介绍s c a 架构 的理论知识和构建s c a 系统的技术基础,介绍o s g i 框架的理论知识和 o s g i 中的技术要点。 第三章s c a 和o s g i 扩展方案研究。分析现有s c a 和o s g i 的结合 模式。基于o s g ii m p l e m e n a t i o nt y p e 模式,提出一种支持服务动态装载的 s c a 框架扩展方案一一s c a & o s g i 4 s e i ,对该方案的服务管理层作重点研 究。 第四章s c a & o s g i 4 s e i 服务管理层的设计。在服务管理层中,一方 面,采用对o s g i 服务注册机制模拟的方法,引入服务集成中心机制,使 s c a 架构具备服务注册注销、服务动态引用等功能,实现服务动态装载 特性,对其中各个功能模块进行设计;另一方面,对s c d l 文件进行扩展设 计,使之可以承载描述服务动态性的属性。 第五章扩展方案的应用。根据该扩展方案,对项目中的业务功能进 5 行分析,重新组合服务,对已有项目的系统进行改进,并进行验证。 第六章总结展望。对全文进行了总结,并指出研究中存在的问题和 改进方向。 6 第二章s c a 架构和o s g i 技术相关理论和技术基础 2 1s c a 架构相关理论和技术基础 2 1 1s c a 与s o a 体系结构 o s o a 组织于2 0 0 5 年发布s c a 规范时,就确定了s c a 与s o a 的关 系:模型与理论、实现与被实现、一种实现标准与一种理论体系之间的关 系。下面需要讨论的就是s c a 是如何实现s o a ,实现的是s o a 中哪些部 分。 目前对于s o a 的体系结构,各大厂商和研究机构有不同的认识,下 面以i b m 所支持的s o a 体系结构堆栈为背景,讨论s c a 与s o a 的关系。 图2 - 1 为s o a 体系结构堆栈l ,虚线部分是s c a 中涉及到的部分,即s c a 的问题域。 f u n c t i o n s ir h 。l :h , f q m ,: 4 s c a 问题域 1 二 v 雌l ) ,o i3 e iv l o g b u s i n e s sp r o c e s s 茸 s e r v i c e 璺 a 苫 咎 分 蚤 2 u 刍 右 g 配 s e r v i c ed e s c r i p t i o n 。 u 爱 器 8厶 o 蠹 矗 趸 三 兰 荡 s e r v i c ec o m m u n i c a t i o np r o t o c o l t r a n s p o r t 丁1 图2 1s o a 体系结构堆栈 体系结构堆栈分成两部分,左边的部分集中于体系结构的功能性方 面,而右边的部分集中于体系结构的服务质量方面。 其中,功能性方面包括: ( 1 ) 传输是一种机制,用于将来自服务使用者的服务请求传送给服务提 供者,并且将来自服务提供者的响应传送给服务使用者。 ( 2 ) 服务通信协议是一种经过协商的机制,通过这种机制,服务提供者 和服务使用者可以就将要请求的内容和将要返回的内容进行沟通。 ( 3 ) 服务描述是一种经过协商的模式,用于描述服务是什么、应该如何 调用服务以及成功地调用服务需要什么数据。 ( 4 ) 服务是实际可供使用的服务。 ( 5 ) 业务流程是一个服务的集合,可以按照特定的顺序并使用组特定 7 的规则进行调用,以满足业务要求。由于可以将业务流程本身看作是服务, 业务流程可以由不同粒度的服务组成。 ( 6 ) 服务注册中心是一个服务和数据描述的存储库,服务提供者可以通 过服务注册中心发布它们的服务,而服务使用者可以通过服务注册中心发 现或查找可用的服务。服务注册中心可以给需要集中式存储库的服务提供 其他的功能。 而服务质量方面包括: ( 1 ) 策略是一组条件和规则,在这些条件和规则之下,服务提供者可以 使服务可用于使用者。功能和服务质量两部分中都有策略功能。 ( 2 ) 安全性是规则集,可以应用于调用服务的服务使用者的身份验证、 授权和访问控制。 ( 3 ) 传输是属性集,可以应用于一组服务,以提供一致的结果。 ( 4 ) 管理是属性集,可以应用于管理提供的服务或使用的服务。 s c a 对实现s o a 的支持主要是在功能性方面的支持。从对s c a 规范 的研究出发,s c a 主要实现的是服务描述、服务、业务流程以及策略部分。 下面将一一论述。 ( 1 ) 服务描述部分。s c a 对服务描述的支持是通过s c d l 语言来实现的。 服务组件描述语言s c d l ( s e r v i c ec o m p o n e n td e s c r i p t i o nl a n g u a g e ) 是s c a 规范中定义的用以描述s c a 组件以及服务的描述性语言,采用x m l 形式 为s c a 中的组件、服务、接口、引用提供标准化的描述。 ( 2 ) 服务部分。服务是s o a 中的基本元素,s c a 对服务的类型采取开 放的态度,鼓励使用多种实现方法构建服务。除了在官方规范中确定的 j a v a 、c + + 、w e bs e r v i c e 之外,允许采用更多的实现形式,甚至可以是“冷 僻 的方法。对服务的限制在于需要提供符合s c d l 规定的接口。 ( 3 ) 业务流程部分。这一部分是s c a 最有意义的部分,因为s c a 关注 的重点就是实现服务的交互合成。在s c a 的核心规范s c aa s s e m b l ym o d e l s p e c i f i c a t i o n 中,详细描述了组件的描述、服务之间的引用关系、接i = 1 的 绑定、引用的绑定等涉及服务合成的问题,提出了一整套解决服务提供、 引用,交互合成的方案。 ( 4 ) 策略部分。s c a 的策略部分主要涉及了s c a 框架模型中的各种策 略,包括s c a 实现策略、角色和职责策略以及安全性策略等问题。 s c a 对于传输和服务通信协议部分没有明确的支持,而是将对这两部 分的支持封装在服务内部。s c a 不涉及服务内部的实现方法,也不涉及已 连接的服务之间的通信方式,即一旦通过服务引用建立了服务间的联系, 服务之间的通信方式就采用构成服务的技术自身的方式,如以w e bs e r v i c e 构成服务,之间就采用s o a p 的通信方式,而以j a v a 构成服务,之间就可 8 以采用r m l 的方式。 s c a 没有涉及对服务注册的支持,因为在s c a 中对每一个服务的描 述中都包括了所需要引用的目标服务信息,并以静态链接的方式记录在 s c d l 文件中。这种方式可以保证服务引用的正确性,但是其灵活性和实用 性不足,缺乏对于服务的动态交互的支持。这一点也正是本文需要解决的 问题之一。 2 1 2s c a 合成模型 s c a 规范是o s o a 组织发布的一组规范的总称,s c a 合成模型【”】 ( s c aa s s e m b l ym o d e l ) 是其中之一,也是整个s c a 架构中的核心规范。 s c a 合成模型描述了s c a 架构中的基本元素,各种元素的属性,以及元 素之间的关联和关联方式。可以说s c a 合成模型提供了s c a 架构的基本 骨架。s c a 合成模型提供组合的紧耦合服务和松耦合的面向服务系统。 在将s c a 架构应用于实际的软件开发中,必须解决两个方面的问题: 1 服务的定义和部署;2 服务之间的交互和调用。s c a 通过定义不同的构 件,实现了将业务功封装在组件内进而提供服务,为解决第一个问题提供 了解决方案。对于第二个问题,则是采用了一种绑定机制,描述了服务和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度跨境贸易代理服务合同范本
- 2025版印刷设备维修保密协议
- 二零二五年度新型环保灰砂砖批量采购合同规范版
- 二零二五年度租赁房屋租赁押金及违约责任合同
- 2025版化工原材料采购与供应链管理合同
- 2025版环保企业安全生产管理与应急处理合同
- 2025版城市更新改造项目施工合同规范文本
- 二零二五年新型储能电站维护与保养服务协议
- 2025电梯维保安全协议书-高层住宅电梯全面保障合同
- 2025版钢结构厂房施工期道路通行与临时设施建设合同
- 2025年湖南省高考真题卷政治和答案
- 聚焦2025年医药企业研发外包(CRO)模式的知识产权保护报告
- 2024年河北省孟村回族自治县事业单位公开招聘工作人员考试题含答案
- 额叶胶质瘤护理查房
- 菜鸟驿站标准化运营流程
- 农行招聘薪酬管理办法
- 危险废弃物及固体废物管理培训
- 2025至2030中国膜行业产业运行态势及投资规划深度研究报告
- 2025至2030中国物流园区行业产业运行态势及投资规划深度研究报告
- 2026年高考生物一轮复习:必背高频考点讲义(全)
- 2025年成人高考语文试题及答案
评论
0/150
提交评论