




已阅读5页,还剩53页未读, 继续免费阅读
(计算机系统结构专业论文)组件化网格容器的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
上海大学硕士学位论文 摘要 随着“服务”重要性的提升,网格正逐渐演化为“面向服务的计算基础 设施”。作为网格服务的基础,网格容器提供了基本运行环境。网格技术的 广泛推广使得网格程序的规模在不断变大,如何确保网格容器及网格服务 的质量因此变得越发的重要。 本文将组件化的思想弓入网格领域,设计并实现了组件化网格容器 g - c o n t a i n e r 。g - c o n t a i n e r 本质上是w e b 服务的基本运行环境与一些实现共 性系统功能的基本服务组件的集合,这些服务被预先部署在组件的基本运 行环境之中,随着基本运行环境的启动开始提供服务。g c o n t a i n e r 包含了 w e b 服务的服务管理、服务状态监控、s o a p 请求处理等核心功能,基本 上满足了普通网格应用对于容器功能的需求。 与其它网格容器不同的是,g c o n t a i n e r 是基于标准规范o s g i 的软件 系统,系统中各个功能组件需要包装成o s g i 的b u n d l e 并发布为o s g i 服务。 这些服务在o s g i 运行环境中交互作用就完成了系统需求的功能,最终实现 了面向服务的组件化系统架构。基于o s g - i 的g - c o n t a i n e r 是典型的组件化 系统,在开发中采用组件化的方式,极大的提高了对网格应用程序复杂性 的控制能力,并有良好的扩展性。 g - c o n t a i n e r 作为w e b 服务的运行环境,采用标准的基于u d d i 的w e b 服务发现过程,目标是逐步支持未来的语义w e b 服务运行环境。为此,本 文设计并实现一种根据服务功能的语义描述信息推测其所属分类的模型。 分类推测模型得出的分类结果可以包装成本体以备将来的语义w e b 服务环 境使用。 g - c o n t a i n e r 系统已经应用于上海市科委重大科技攻关项目“基于网格 技术的上海交通信息服务示范系统”中,并取得了良好的效果。 关键词:网格容器,组件化,o s g - i ,服务发现 v 上海大学硕士学位论文 a b s t r a c t w i t ht h er i s eo ft h es e r v i c ec o n c e p t , g r i di s e v o l v i n gt o 、a r d st h e ”s e r v i c e o r i e n t e dc o m p u t a t i o n a li n f r a s t r u c t u r e ”a st h eb a s i so fw e bs e r v i c e s ,鲥d c o n t a i n e rs u p p l i e st h es e r v i c e sw i t hb a s i c 鲥dt u n f i m ee n v i r o n m e n t t h er e c e i 】t w i d es p r e a do fg r i da p p l i c a t i o ni n t r o d u c e sm u c hl a r g e rs c a l ea n d c o m p l e x i t yt o 鲥dp r o g r a m s h e n c e , h o wt oe n s u r et h eq u a l i t yo fg r i dc o n t a i n e ra n dt h e s e r v i c ei n c l u d e di sb e c o m i n ge x t r e m e l yi m p o r t a n t t h i s p a p e r ,e x e m p l i f y i n g w i l h t h e g - c o n t a i n e r , i n t r o d u c e s c o m p o n e n t a l i z a t i o nt o 鲥d e n v i r o n m e n t i m p l e m e n t a t i o n i ne s s e n c e , g - c o n t a i n e ri sac o m p o s i t eo f d i f f e r e n ts e r v i c ec o m p o n e n t sa n dt h ef u n d a m e n t a l r u n t i m ee n v i r o n m e n to f t h o s ec o m p o n e n t s t h e s es e r v i c ec o m p o n e n t sn e e dt ob e d e p l o y e di nt h en m t i m ee n v i r o n m e n ta n ds t a r tt ow o r ka f t e rt h el a u n c ho f r u n t i m ee n v i r o m e n t c u r r e n t l y , g - c o n t a i n e ri sc a p a b l eo fs e r v i c em a n a g e m e n t , s e r v i c em o n i t o r i n g , s o a pm e s s a g ep r o c e s s i n ga n do t h e rc o r es e r v i c e st h a tm e e t 面d u s c i s sn o r m a ln e e d s d i s t i n g u i s h i n gf r o mo t h e rg r i dc o n t a i n e r s ,g - c o n t a i n e rf o l l o w st h eo s g i s p e c i f i c a t i o n a l lt h ef u n c t i o nc o m p o n e i i t sw i t h i nt h ec o n t a i n e rn e e dt ob e i m p l e m e n t e di na l lo s c ib 呲d i cf o r m a ta n dp u b l i s h e da so s g is e r v i c e s t h e f u n c t i o nr e q u i r e m e n tt ot h ew h o l es y s t a mw i l lb ef u l f i l l e db yt h ei n t e r o p e r a t i o n a m o n gt h e o s g is e r v i c e s d e p l o y e di n t o t h e u n d e r l y i n go s g ir u n t i m e e n v i r o m e n t s y s t e m i nt h i s w a yi s b a s e d0 1 1t h es e r v i c eo r i e n t e d c o m p o n e n t a l i z e da r c h i t e c t u r en a t u r a l l ya n dw i l ld e r i v eg r e a tb e n e f i tf r o m c o m p o n e n t a l i z a t i o n , s u c h a st h e i m p r o v e m e n ti n t h e m a n a g e a b i l i t y o n a p p l i c a t i o nc o m p l e x i t ya n d b e t t e rf u n c t i o n a le x t e n s i b i l i t y g - c o n t a i n e ri n h e r e n t l ya c t sa sar u n l i m ee n v i r o n m e n to fw e bs e r v i c e sa n d c u r r e n t l ye m p l o y ss t a n d a r du d d is p e c i f i c a t i o ni n t h e s e r v i c ed i s c o v e r i n g v i p r o c e s s m o r e o v e r , t om a k et h eg c o n t a i n e rb ea b l et o n c o r p o r a t ew i t hf u t u r e s e m a n t i cw e bs e r v i c e s ,t h i sp a p e rp r o p o s e sac a t e g o r i z a t i o ns p e c u l a t i o nm o d e l , w h i c hc o u l ds p e c u l a t ea b o u tt h ec a t e g o r i z a t i o no f as p e c i f i cs e r v i c ea c c o r d i n g t o i t ss e r v i c ed e s c r i p t i o n t h ec a t e g o r i z a t i o ni n f o r m a t i o nc o u l dt h e nb ew r a p r i e d i n t oo n t o l o g yf o r ma n db eu s e db yt h es e m a n t i cw e b s e r v i c e se n v i r o n m e n t g c o n t a i n e ri sa l r e a d yp r o v e daw o r k a b l ea n dp r a c t i c a ls y s t e mb y ”g r i d s e r v i c eb a s e ds h a n g h a it r a n s p o r t a t i o ni n f o r m a t i o ns e r v i c ee x e m p l i f y i n g s y s t e m ” k e y w o r d s :g r i dc o n t a i n e r , c o m p o n e n t a l i z a t i o n , o s g i ,s e r v i c ed i s c o v e r y 原创性声明 本人声明:所呈交的论文是本人在导师指导下进行的研究工作。 除了文中特别加以标注和致谢的地方外,论文中不包含其他人已发 表或撰写过的研究成果。参与同一工作的其他同志对本研究所做的 任何贡献均已在论文中作了明确的说明并表示了谢意。 签名:日期: 本论文使用授权说明 本人完全了解上海大学有关保留、使用学位论文的规定,即: 学校有权保留论文及送交论文复印件,允许论文被查阅和借阅;学 校可以公布论文的全部或部分内容。 ( 保密的论文在解密后应遵守此规定) 签名:导师签名弛日期: n 上海大学硕士学位论文 1 1 网格和网格容器 第_ 章绪论 网格( g r i d ) 【l 】【2 】技术指在动态的、多组织参与的虚拟组织( x r i r t u a l 0 r g a n z a t i o n , v o ) 中进行协同的资源共享和问题求解。它是一种集成资源和服务 的环境。这里,网格集成的对象包括计算能力、数据信息和知识、软件、人等 各种相关的资源和服务。网格是网络上可用的一组分布式计算资源,它在最终 用户或应用程序面前表现为一个大型虚拟计算系统。它可以跨越地点、组织、 机器体系结构和软件边界,向连接到网格的每个人提供强大的运算能力、协作 和信息访问。网格目前正处于快速发展时期。 随着网格技术的发展,商业应用领域也需要这种跨组织的资源和服务动态 共享的思想。当前在商业计算领域最为热门的技术就是w e b 服务提倡的面向服 务的计算架构( s 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 o a ) 。为了和s o a 架构结合,网 格领域专家原来提出的孤立的网格服务概念逐渐在向标准的w e b 服务靠拢。本 质上,网格服务1 3 堤w e b 服务在网格计算环境下的扩展,是w | e b 服务的子集。 考虑到网格技术在商业领域的巨大发展前景,当前网格的发展趋势是面向服务 的网格( s e r v i c eo d d ) 。 网格容器是一种中间件,为容器内的功能组件提供基本的运行环境。中间 件是通过通信机制连接应用程序韵软件,它位于应用程序和平台之问,提供透 明性、可扩缩性和互操作性;中间件是平台和通信机制,这种平台中间件有利 于分布式组件通信和协调:中间件是一个软件层,使分布式系统成为可编程的 软件,使分布式软件的交互变得容易;中间件是一种系统软件,用于在开发与 集成中“桥接”应用软件与底层的硬件、软件基础设施,并简化集成过程。 作为“面向服务的计算基础设施”【2 】,网格容器中间件( 包含网格容器本身 和部署在容器内的其它功能组件) 通常实现了网格环境下w e b 服务的远程部署、 运行管理、服务状态监控、s o a p 请求处理与转发等核心功能。从功能上看, 网格容器就是一个扩展了的w e b 服务容器。 上海大学硕士学位论文 从总体上看,网格容器是网格应用程序的宿主,拥有一个好的网格容器是 网格应用能否成功的前提。 1 2 国内外研究概况 1 2 1 国外研究概况 美国n s f 承担的基于g r i d 技术的“分布式万亿级设施”将四个不同地区 结点的超级计算机和海量存储资源构成了虚拟超级计算机。它支持计算密集型、 数据密集型和通讯密集型的应用,其主要应用领域为气候、环境资源、地震、 发动机模拟、生物、材料等科学计算和工程模拟应用。 欧洲国家在2 0 0 1 年正式启动了网格研究的一系列项目。英国政府投资2 亿 英镑左右支持网格研究项目,并确定了用网格计算技术构建e - s c i e n c e 。 2 0 0 2 年2 月,在加拿大多伦多市召开的全球网格论坛g o f 会议上,g l o b u s 项目组和i b m 共同倡议了一个全新的网格标准o g s a l 4 1 。o g s a 是开放网格服 务体系,它把g l o b u s 标准与以商用为主的w e bs e r v i c e s 5 1 的标准结合起来,网 格系统统一以服务的方式对外界提供接口。 虽然o g s i 6 i 作为o g s a 的核心概念,其自身存在一些缺陷,需要一些新的 结构来解决这些问题。所以采用新的结构代替o g s i 是有必要的,可以通过结 构转变获得网络服务强有力的支持。2 0 0 4 年1 月, a k a m a it e c h n o l o g i e s 、t h e g l o b u s a l l i a n c e 、惠普、i b m 、s o n i cs o r w a r c 和t i b c os o f t w a r e 六公司在o g s i 的基础上,公布了统一网格计算和w e b 服务的新标准w e b 服务通知 ( w s - n o t i f i c a t i o n ,w s n ) 和w e b 服务资源框架( w s r e s o u r c ef r a m e w o r k , w s r v ) 。w s r f 基本保留了o g s i 中的所有功能,同时更改了一些语法,并且 还在其表示中采用了不同的技术。w s n 为w e b 服务提供基于消息发布和预定 能力。w s r f 和w s n 都是建立在已存在的w e b 服务定义和技术基础上的,帮 助实现了网格计算,系统管理和w e b 服务的统一。 g l o b u st o o l k i t4 ( g t 4 1 【刀是基于o g s a 结构模型并兼容w s r f 的、构架网 2 上海大学硕士学位论文 格计算平台的工具包,也是目前最重要的网格应用开发软件包。g t 4 主要实现 以下四个方面的功能: ( 1 ) 网格安全:这是网格计算环境正常运行的保证。 ( 2 ) 网格信息获取与分布:在网格计算环境中如何发布资源信息,如何查询、 检索资源信息是有效使用各种资源的前提条件。 ( 3 ) 网格资源管理:由于网格环境中的资源主要分布在广域网环境中,采 用目前常用的局域网资源管理技术不能有效地对其进行管理,为此,要求在局 域网资源管理之上实现更高层次,更大范围的资源管理技术。 ( 4 ) 网格远程数据传输。实现广域网环境下的高速、可靠的数据传输和实 现对应用程序基本透明的远程文件i o 访问是g l o b u s 考虑的一个重要内容。 实质上,g t 4 就是一个网格容器,并提供了安全功能、数据管理功能、信 息服务功能和执行管理等功能。 1 2 2 国内研究概况 在我国,网格研究己经列入“8 6 3 ”计划。从1 9 9 9 年底到2 0 0 1 年初,中科 院计算所联合十几家科研单位,承担了8 6 3 重点项目“国家高性能计算环境” 的研发任务。该项目的目标是建立一个分布式环境下支持异构平台的计算网格 示范系统,它把我国的8 个高性能计算中心通过i n t e m e t 连接起来,进行统一的 资源管理、信息管理和用户管理,并在此基础上开发了多个计算型的网格应用 系统,取得了一系列研究成果。 2 0 0 2 年底,上海市宣布将投入两个多亿,建设e - i n s t i t u t e ,其中网格作为重 点,它把上海交大、复旦、华东理工、上海大学等多所重点高校用网格整合起 来,共享资源,协同教学科研。2 0 0 5 年1 1 月2 2 日,国家8 6 3 计划“超级计算 网格节点建设”项目顺利通过验收,标志着中国国家网格北方主节点建设完成 了其“十五”期间的建设任务,所取得的重要阶段性成就为国家网格在“十一 五”的持续发展奠定了坚实的基础。到目前为止,国内己形成的中国“五大网 格”是: ( 1 ) 8 6 3 中国国家网格c h i 尬n a t i o n a lg r i d 上海大学硕士学位论文 ( 2 ) 国家自然科学基金委网格c h i n as c i e n c eg r i d ( 3 ) 9 7 3 语义网格c h i n as e m a n t i cg r i d ( 4 ) 中国教育科研网格c h i n ag r i d ( 5 ) 上海网格s h a n g h a ig r i d 在网格中间件的研究上,中科院计算所的网格操作系统( g o s ) 【司在国内 具有代表作用。c o s 采用了a x i s 作为网格容器,为最终用户提供基于w e b 的 系统管理界面,支持资源管理( 包括本地的社区内有效服务和全局的服务路由 器内虚拟服务) 、基于角色的用户管理、访问控制和授权策略管理等g o s 核心 管理功能,允许管理员通过通用教! i 览器管理g o s 系统。同时,还将文件管理, 网格批作业和批作业记账等面向最终用户的g o s 系统功能集成到网格p o r t a l 引 擎中,在基于p o r t a l 引擎的网格门户中实现了友好的用户界面。 1 3 论文的主要研究意义和内容 已有的网格领域研究大多关注于网格技术及其在相关领域中的应用,如计 算网格,数据网格,语义网格等等。随着网格技术的发展,网格应用的规模日 益扩大,网格应用软件的质量成了人们越来越需要关注的问题,如网格应用程 序的扩展性,可维护性,可靠性等。网格容器是网格应用程序的平台,容器本 身作为软件,其软件质量更是决定了架设在平台上的网格应用能否成功。而组 件化技术则是在软件工程领域被证实了的保证软件质量的核心技术。 在这样的前提下,讨论如何构建一个高质量的基于组件技术的网格容器, 并将组件化的开发应用到网格程序的开发中便成为了一个十分必要的研究课 题。 本文是以作者攻读硕士学位期间参与的科研课题的工作为基础。文章在第 一章中概要介绍了网格计算及网格容器的国内外发展概况,为论文研究内容提 供了一个大的背景。第二章阐述了组件化系统和中间件的一些相关知识,并提 出了网格容器中间件的概念。第三章重点介绍了实现组件化的关键技术o s g i , 并引出了基于o s g i 的组件化网格容器( g c o n t a i n e r ) 的设计并给出了 g - c o n t a i n e r 的实现。第四章结合语义w e b 服务发现技术,介绍了一种分类推测 4 上海大学硕士学位论文 模型,并在g - c o n t a i n e r 的服务发现b u n d l e 中使用了这种模型,为将来对语义 w e b 服务的支持奠定基础。第五章则实例化介绍服务发现b u n d l e 在o s g i 组件 环境下的实现以及相关技术。最后,在第六章总结全文,做出结论与展望。 上海大学硕士学位论文 第二章组件化技术与网格容器中间件 网格容器由于支持分布式,往往需要扮演中间件系统的角色。随着网格容 器本身及容器内部的网格应用程序的规模变大,组件化技术越来越适合应用到 网格容器中以提高软件质量。除此之外,网格容器还应拥有组件化和中间件带 来的其它诸多益处。 2 1 组件 2 1 1 组件定义与优点 组件技术是目前流行的软件开发技术之一。对组件技术的常见说法有以下 这些,“二进制软件单元”、“任意场合可部署的软件”、“特别适合第三方开发和 规范定义的接1 :3 ”等掣9 】。大致上可以这样理解,组件其实就是一种可部署的 软件代码包,其中包括某些可执行模块。组件单独开发并作为软件单元使用, 它具有明确的接口,软件就是通过这些接口调用组件所能提供的服务,多种组 件可以联合起来构成更大型的组件乃至直接建立整个系统。组件的实现必须支 持一种或者多种其他用户所希望获得的接口,为了构造新应用程序,软件开发 人员找出适当的组件,将这些组件加入到正在开发中的应用程序,同时对应用 程序进行测试并保证应用程序的组装工作按照预定的规划正常进行。采用组件 技术能降低开发、测试和维护成本,提高可靠性和稳定性。 组件技术的发展经过了多年的实践和运用,已经达到了一个比较成熟的阶 段。组件是对早期面向对象思想的沿袭和扩展,是可复用的软件组成成分,可 被用来构造其他软件,它可以是被封装的对象类、一些功能模块、软件框架及 设计模式等,使各个组件相互独立而又能有效交互实现一个功能系统,它在二 进制级别上实现了代码的复用【1 0 】。具体来说,组件技术的优势主要表现在以下 几个方面: ( 1 ) 可重用性:组件化的软件开发有利于软件企业的经验和技术积累。组 6 上海大学硕士学位论文 件可以很好地重用,使企业大大减少后续开发与改进的投入和费用。组件开发 技术使业务逻辑封装在规划好的组件单元内,当面对不同客户需求时,只需更 改相应的组件,通过事先定义好的组件接口,很快就可以完成系统的集成。另 外,使用组件管理可以方便系统版本维护。当现有系统不能满足要求时,企业 一般都会选择对现有应用系统进行再开发,往往不抛弃现有系统。因此,对系 统扩展或进行再开发时,现有应用系统中的组件也可以被重用。 ( 2 ) 连续性:在整个开发过程中,由开发工具实现了企业设计和应用系统 开发之间的联系。从企业设计到过程组织和数据组织,直至最终应用系统的每 一个步骤,使用者都是由相应的开发工具支持的。由开发工具开发的组件可以 被多次重用和组合,所以使用者只需精通较少的基本单元。如一个数据登录界 面可以被用于一个任务的输入,也可以查看所有过程的信息或对数据表格的内 容快速浏览。 ( 3 ) 适应性:全面、个性化、可调节的适应能力。由于企业所属行业、规 模、生产类型的多样性,以及企业组织和业务流程经常性的变化,因此要求软 件供应商或开发者所提供的软件能适应企业个性化的要求。组件以两种不同的 方式进行适应性调节:在一个应用系统中进行组件转换时,通过自由的、可选 择的组件与数据表格的对应来进行适应性调节;借助于组件开发工具进行结构 化适应。组件开发工具允许对所有单元进行非程序化的改变和由使用者自己进 行适应性调节。 ( 4 ) 开放性:不依赖于企业的类型和规模,可以在多数据库系统、多操作 系统平台上运行。系统中所有单元均不依赖于某一种数据库系统。例如,借助 于开发工具所开发的组件和应用系统中,数据可以在异构数据库之间实行转换。 ( 5 ) 对业务逻辑的封装:对业务逻辑封装的规划,确定了组件的边界和接 口特性。良好的规划可以使组件和其功能与某一具体的应用系统之间相对独立, 组件可以独立开发和单独测试。 2 1 2 组件化的开发方法 基于组件的开发( c o m p o n e n t - b a s e dd e v e l o p m e n t ,简称c b d ) 或基于组件 7 上海大学硕士学位论文 的软件工程( c o m p o n e n t - b a s e ds o l , w a r ee n g i n e e r i n g ,简称c b s e ) 1 1 】是一种软件 开发新范型,它是在一定组件模型的支持下,复用组件库中的一个或多个软件 组件,通过组合手段高效率、高质量地构造应用软件系统的过程。随着以分布 式对象为基础的组件实现技术日趋成熟,c b d 已经成为现今软件复用实践的研 究热点,被认为是最具潜力的软件工程发展方向之一。 c b d 遵循“购买而不创建”1 1 2 1 的开发哲学,让人们从“一切从头开始” 的程序编制转向软件组装。基于组件的开发过程包括创建、检索和评价、适配、 组装、测试和验证、配置和部署、维护和演进,以及遗产系统的再工程 ( m c n g i n c e r i n g ) 等主要活动,与传统的生命周期中的方法相比,c b d 有以下 几个特点: ( 1 ) c b d 采用以组件库为中心的开发模式。组件检索和评价是c b d 的一项 关键任务,组件库不是一个独立的数据库,它包含了广泛的、一切可获得的组 件资源,甚至可以是通过互联网发布的软件组件。 ( 2 ) 组件形成是一种在软件体系结构支持下的组装过程,也就是说,在应 用领域里需要用领域特定的软件构架( d o m a i n s p e c i f i cs o f t w a r e a r c h i t e c t u r e ,简 称d s s a ) 将独立的组件装成完整的应用系统,可见组件的匹配和一致性验证也 成为c b d 的关键任务。 ( 3 ) c b d 过程中需要同一些技术标准化接轨,相同的组件可能由多个软件 供应商生产,被多个用户使用,所以组件接口、组件基础设施必须标准化。 ( 4 ) c b d 需要配置管理,即专门处理组件的集成、配置和发布的有关事宜, 于是组件的配置、适配和部署都是c b d 的关键任务。 2 2 中间件 2 2 1 中间件的概念 如今,大量的软件产品都引入了“中间件”的概念,这使入难以准确的理 解中间件的概念。中间件在学术上有许多不同的定义。如:中间件是通过通信 机制连接应用程序的软件,它位于应用程序和平台之间,提供透明性、可扩缩 3 上海大学硕士学位论文 性和互操作性【i 习;中间件是平台和通信机制,这种平台中间件有利于分布式组 件通信和协调;中间件是一个软件层,是使分布式系统可编程的软件,使分布 式软件的交互变得容易。 一个比较全面的定义是:中间件是有助于应用软件与其它应用软件、网络、 硬件和操作系统交互或通信的软州1 4 1 。这种软件为高层编程抽象( 如通信、事务 和数据集合) 提供服务,把程序员从分布式软件实施的复杂性中解脱出来。它为 改进对用户透明的服务质量( q o s ) 、安全性、消息传递、目录服务、文件服务等 提供了工具。这个定义描述了现在的大部分中间件产品的特征。 2 2 2 中间件是组件化的基础 组件技术在最初时更多是作为一种思想存在,进而才在一些关键的环节上 发展出解决问题的技术分支。组件的存在某种程度上极大地依赖于构架技术, 只有在适当的构架中,软件才有可能被抽象和隔离成为组件;只有通过构架, 组件才有可能被组合、装配成一个完整的应用系统。因此,单独讨论组件是抽 象而空洞的。构架不是操作系统、数据库或网络协议,也不完全是应用,而是 在某种特定意义上的组件运行容器,层次上界于应用和基础设施之间。中间件, 从本质上是对分布式应用的抽象,因而抛开了与应用相关的业务逻辑的细节, 保留了典型的分布交互模式的关键特征。经过抽象,将纷繁复杂的分布式系统 经过提炼和必要的隔离后,以统一的层面形式呈现给应用。应用在中间件提供 的环境中可以更好地集中于业务逻辑上,并以组件化的形式存在,最终自然而 然地在异构环境中实现良好的协嗣工作。所以,中间件与构架实际是从两种不 同的角度看待软件的中间层次,两者在本质上是一致的。可以这样说,中间件 就是构架,或组件模型的具体实现,是软件构件化的基础【闱。这体现在以下三 个方面: ( 1 ) 组件化软件开发应当是面向需求的,开发者的精力应集中于业务逻辑 本身,而不必为分布式应用中的诸如通信、互操作、可靠性和效率等大量与业 务无直接关系但又非常重要的问题耗费大量的精力,这些问题应当通过构架来 加以解决。而这正是中间件所要解决的问题,所以基于中间件的应用开发是面 9 上海大学硕士学位论文 向需求的,从本质上符合组件化设计的思想。 ( 2 ) 中间件将系统资源与应用构件隔离,以保证构件可重用甚至。即插即 用”。中间件最大的优势之一就是屏蔽多样的系统资源,保证良好的互操作性。 应用开发者只需按照中间件规定的模式进行设计开发,不必考虑下层的系统平 台,因此中间件真正实现了与环境隔离的组件开发模式。 ( 3 ) 组件与外界的交互,都是通过规范定义的接口进行,组件使用者只需 要知道组件的接口,而不关心其内部实现,这是设计与实现分开的关键。中间 件不是具体的软件,而是抽象的模型,它定义了组件交互的规则,如标准的协 议,以确定基于这些规则所需的标准环境,并按照这些规则对其中的组件加以 管理。 2 3 网格容器中间件概念的提出 2 3 1 应用服务器 、 中间件的运行需要依赖中间件容器( 应用服务器) 所提供的系统环境,即 容器是中间件的宿主。应用服务器通过把用户接口、商业逻辑和后端服务分割 开来,向开发者提供了一种创建、部署和维护企业规模的w e b 应用的模块化方 式,为要转向w e b 的用户提供了高性能多线程的环境。它是一种支持多种工业 标准的协议和界面引擎,它支持的标准包括数据库互联标准o d b c 和j d b c 、 c o r b a 、c o m d c o m 、e n t e r p r i s ej a v a b e a n s ( e j b ) 对象模型等。 应用服务器是在当今互联网上企业级应用迅速发展、电子商务应用出现, 并将快速膨胀的需求下,产生自q 一种新技术,通过它可以将一个企业的商务活 动安全,有效的实施到网络上。实现电子商务,采用应用服务器技术可以大大 缩短开发周期、减少风险和降低成本,它在技术上基于互联网上的开放标准, 具有极强的生命力。应用服务器可以帮助企业构架一个基于i n t e r n e t 的电子商务 系统,向企业级用户提供了设计、开发、部署、运行和管理一个i n t e r n c t 电子商 务系统的平台,而且拥有极高的稳定性,可扩展性和安全性。 1 0 上海大学硕士学位论文 目前,几种主流的应用服务器有: ( 1 ) b e a w e b l o g i e 应用服务器1 1 6 1 b e a w e b l o g i e 产品系列包括可以单独使用或结合使用的适用于各种规模企 业的一系列应用服务器解决方案。b e a w e b l o g i c 企业版是可伸缩、高可用、支 持企业j a v a 标准和c o r b a 且具有主机互操作性的企业应用服务器,它能够帮 助企业将w e b 和j a v a 应用和现有的p c 机应用、企业数据和原有系统集成起来, 它是提供k i b 组件、j a v a 消息传递、事件服务和c o m 集成的w e b 应用服务器。 ( 2 ) m mw e b s p h e r e 应用服务器【1 7 1 i b mw e b s p h e r e 是一个完善的、开放的w e b 应用服务器,它是i b m 电子商 务应用构架的核心,它严格遵守流行的开放标准,如h t t p 、h t m l 、j s p 、j n d i 和i i o p 。w e b s p h c r e 应用服务器基于j a v as e n , l e t 引擎,将通常的w e b 服务器增 强为基于j a v a 的w e b 应用服务器,它支持e j b 编程模型以及c o r b a ,联合 e n t e r p r i s ej a v as e r v e r 和一个j a v ao b j e c tr e q u e s tb r o k e r ,可以通过i i o p 访闯分 布的对象,利用这个标准的、广泛的编程模型,可在w e b 应用中实现对各种商 业对象的访问和运行服务。 2 。3 2 网格容器中间件 网格容器实质上是应用服务器的一种,与普通的应用服务器不同的是:它 是针对于网格系统中的中间件组件的,为容器内的网格中间件组件提供基本的 网格运行环境。本质上讲。网格容器及其包含的中间件组件都是帮助网格应用 软件交互和通信的软件。它们为高层编程抽象提供服务,把网格程序员从分布 式软件实施的复杂性中解脱出来。为改进系统对用户透明的服务质量( q o s ) 、安 全性、消息传递、目录服务、文件服务等提供了工具。因此,我们将网格容器 及其包含的中间件组件程序统称为网格容器中间件。网格容器中问件通常实现 了网格服务的远程部署,运行管理、服务状态监控、s o a p 请求处理与转发等 核心功能。从功能上看。网格服务容器就是个扩展了的w e b 服务容器。从 形式上看,网格服务容器是网格服务的基本运行环境与一些实现共性系统功能 的基本服务的集合,这些服务被预先部署在基本运行环境之中,随着基本运行 上海大学硕士学位论文 环境的启动开始提供服务。 2 4 小结 当网格容器本身以及容器内部的功能单元均采用组件作为功能单元,并遵 循基于组件的软件开发方法,网格容器中间件即具有了组件化系统的优点。比 如,提高软件复用度、可靠性、可维护性、可扩展性,以及程序员的开发效率。 同时,网格容器作为中间件,对网格应用的使用者完全透明。网格容器提 供的系统接口,可以使网格应用的开发人员只对接口编程,不用考虑底层细节。 1 2 上海大学硕士学位论文 第三章基于o s g i 的组件化网格容器 组件化可以给网格容器带来诸多好处,而o s g i 【1 ”则为我们完成网格容器 组件化提供了切实的技术支持。在引入o s g i 技术之后,我们用基于o s g - i 的 g - c o n t a i n e r 进一步验证了网格容器组件化的可行性。 3 1o s g i 介绍 3 1 1o s g i 历史 o p e ns e r v i c e sg a t e w a yi n i t i a t i v e - o s g i ( 开放服务网关组织) 是一个非盈利的 工业组织。它于1 9 9 9 年5 月在美国加利福尼亚成立。最初,开放服务网关组织 由e r i c s s o n ,s u n 和i b m 三家公司组成。渐渐的,更多的公司加入了o s g i 组 织,到现在为止一共有1 0 0 多家。 o s c d 组织致力于面向连接在网络上的家用终端以及连接宽带因特网的网 关设备的标准。由于o s g i 组织希望该协议规范具有独立于操作系统,独立于 开发语言。而只有j a v a 语言环境符合o s g i 组织的要求,所以o s c d 组织采用 j a v a 的框架结构。 0 s g i 组织已经发布了一套软件规范,该规范定义了一个开发式的软件框 架。它允许不同的服务软件能够在服务网关上装载和运行。 一般来说,服务网关可以是! s e tt o pb o x ,c a b l em o d e m , d s lm o d e m , p c , d e d i c a t e dr e s i d e n t i a lg a t e w a y , w e bp h o n e ,a u t o m o t i v em u l t i m e d i ag a t e w a y 等等。 基于o s c d 规范的技术目前已经应用于很多全球f o r t u n e 榜排名前1 0 0 名的 公司的产品与服务中。o s g - i 为居家、交通、电信、工业等行业提供了一个理想 的软件集成平台。并且这样的集成不仅可以是某一行业内部的,而且可以是跨 行业的集成。 除去管理机构外,0 s g i 联盟中技术与市场组织对o s g i 规范的发展起很 大的作用。现简要介绍如下: 上海大学硕士学位论文 ( 1 ) 核心平台专家组:简称c p e g ,该专家组为o s c - i 平台制定规范和应用 编程接( a p i ) 。c p e g 主要关注构成o s g i 执行环境的组件,并提供适合所有 o s g i 执行环境的基础服务,比如日志、安全等服务。 ( 2 ) 交通专家组:简称v e p ,该专家组的主要工作是裁剪和扩展o s g i 核心 规范的内容,使之适用于交通运输行业。它主要从汽车、运输公司中获 取需求,以确保o s g i 规范能适用于该领域。 ( 3 ) 通讯专家组:简称m e p ,该专家组的主要工作是裁剪和扩展o s g i 核 心规范的内容,使之适用于通讯行业。m e p 在技术方面的工作主要包括确定通 讯服务需求、功能模块规范、数据格式、传输协议等内容。 ( 4 ) 市场工作委员会:该委员会的主要目的是对o s g i 平台进行市场推广, 它的主要工作是每年举行三次成员大会,向业界进行信息发布和产品展示等。 ( 5 ) 市场需求委员会:该委员会以市场需求文档( 简称m r d ) 的形式记录了市 场对于o s g i 联盟的需求,它是制定o s g i 规范的依据,并被用于跟踪o s g i 规 范是否符合市场需求。m r d 是仅向o s g i 联盟成员发布的内部文档,不对外发 布。 3 1 20 s g i 规范 o s g i 规范是由o s g i 联盟制定的,并且随着市场需求与技术演进的进程在 不断的更新,其最新版本是2 0 0 5 发布的第4 版。目前包括i b m ,h p , c i s c o , i n t d , s u n , m o t o r o l a , n o k i a 等在内的1 0 0 多个公司声明支持该规范。o s g i 的系统架构如图3 1 所示。 1 4 上海大学硕士学位论文 o s c d 规范中定义的几个主要组成部分有: ( 1 ) b u n d l e :提供一定功能或服务的代码和文件。这些功能可以通过代码共 享或者对象共享的方式提供出来。而对于非代码文件,则可以通过数据流或者 信息流的方式析出给应用。b u n d l e 是o s c a 架构的组件单元,是组件化开发的 基础。 ( 2 ) 系统b u n d l e :又称系统框架,是整个o s g - i 规范的核心与基础。o s g i 架构由系统b u n d l e 支撑,其他所有的应用b u n d l e 都运行于系统b u n d l e 之上。 系统b u n d l e 管理所有其它b u n d l e 的生命周期,管理由各个b u n d l e 提供的服务, 并提供元数据( b u n d l e 装配表信息) 管理、代码装载等功能。 ( 3 ) o s g i 服务:由各个b u n d l e 提供的希望被别的b u n d l e 所使用的功能,它 通过对象共享的方式注册于系统b u n d l e 。在0 s g i 规范中制定了一些基本的服 务,比如h t r p 服务器服务、日志服务、x m l 服务、配置管理服务、设备访问 服务、用户管理服务、权限管理服务、j a v a 包管理服务、u r l 处理器服务等。 通过o s c a 服务,各个应用b u n d l e 可以以标准的方式实现交互与协作。 ( 4 ) o s c a 服务注册表:由系统b u n d l e 管理的,可被其他b u n d l e 查询的服务 列表。通过这个服务列表,系统b u n d l e 才能确认某个被请求的服务是否存在、 是否启动,并把这个状态反馈给当前请求的b u n d l e s 。 0 s g i 规范为网络服务定义了一种标准化的、组件化的计算环境。主要的特 性有以下几点: ( 1 ) 组件生命周期管理:指对每一组件的安装、启动、运行、停止和卸载这 上海大学硕士学位论文 些生命活动的管理,这些生命活动的状态转换关系如图3 2 所示。 蠹蝎抽甜 一一a t t m a m i c i r a m 矗i m 图3 2o s g ib u n d l e 状态图 状态图中的状态含义如表3 1 所示: 表3 io s g ib u n d l e 状态含义 状态名称:含义: ; 一i n s t a l l e d 安装完成,本地资源成功加载。 5 r e s o l v e d 依赖关系满足,这个状态意味该b u n d l e 要么已经准备好。 运行,要么是被停止了。 i s t a r t n 寸g b u n d l e 正在被启动,b u n d l e a c t i v a t o r 的s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年某科技企业劳动合同样本
- 2025年农村土地租赁协议(合同样本)
- 高二生物教学计划与总结报告
- 2025年陆路货物运输合同范本
- 零售门店客户服务流程标准化
- 食品添加剂风险的营养学视角与安全性评估-洞察及研究
- 2025促销盛宴商家合作合同
- 2025年上海市汽车销售合同
- 广告销售技巧与客户沟通培训资料
- 7.4 等差数列与等比数列的应用说课稿中职基础课-拓展模块一 下册-高教版(2021)-(数学)-51
- GB/T 37573-2019露天煤矿边坡稳定性年度评价技术规范
- GB/T 33467-2016全自动吹瓶灌装旋盖一体机通用技术要求
- GB/T 20481-2006气象干旱等级
- 校园监控维护记录表
- 2023年石家庄水务投资集团有限责任公司招聘笔试模拟试题及答案解析
- 2020牛津译林版高中英语新教材选修第一册全册课文翻译及单词表
- 绩效考核环保管理考核细则
- 我国运动员在奥林匹克运动会取得的辉煌成绩课件
- 2021新苏教版科学五年级上册第二单元《热传递》课件
- 专升本高等数学的讲义80页PPT课件
- 汽车机械基础(全套课件)
评论
0/150
提交评论