[发明专利]基于CORBA的OSGi分布式扩展系统及方法有效
申请号: | 200910207404.7 | 申请日: | 2009-10-30 |
公开(公告)号: | CN102053860A | 公开(公告)日: | 2011-05-11 |
发明(设计)人: | 史殿习;尹刚;吴元立;王怀民;崔巍 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | G06F9/46 | 分类号: | G06F9/46 |
代理公司: | 北京泛华伟业知识产权代理有限公司 11280 | 代理人: | 王勇 |
地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 corba osgi 分布式 扩展 系统 方法 | ||
技术领域
本发明涉及一种OSGi分布式扩展系统及方法,特别涉及基于CORB-A的OSGi分布式扩展系统及方法。
背景技术
软件行业的工业化趋势导致了构件技术的产生。能够像硬件系统那样,将软件组合起来构建软件系统是软件行业多年来追求的目标。可以说,构件技术的出现是对传统软件开发过程的一次变革。Java是目前最主要的企业级软件开发技术,但是已有Java标准没有提供对构件开发的支持,阻碍了构件技术在Java中的应用。
OSGi(Open Services Gateway Initiative,开放服务网关协议)是由1999年成立的OSGi联盟所提出的一个开放的服务规范,该规范为Java提供了动态化、面向服务的构件化开发支持。采用OSGi技术能够显著降低软件开发各个阶段的复杂度,使得代码更加容易编写与测试,构建系统更加简单,部署更加可管理,也提高了软件的重用性和运行时的动态配置能力。
OSGi在本质上是一个为Java提供的动态、模块化的系统。OSGi中的运行于OSGi内核上的模块被称作bundle,bundle是由普通的JAR文件加上额外的元信息描述构成的。bundle模块之间通过元信息描述显式地声明包的导入、导出以实现代码和资源的共享,而OSGi内核自动地处理bundle模块之间的依赖解析。同时,OSGi也提供了一个面向服务的编程模型,在OSGi中服务就是普通的Java对象,bundle模块可以通过集中的服务中心来注册其所提供的服务,而其他bundle模块可以通过注册中心查询、监听、获取服务来实现bundle模块之间松耦合的协作,服务的契约用Java接口和一系列服务属性描述。需要指出的是,标准OSGi规范中只提供了针对单一JVM(Java Virtual Machine)的面向服务的编程模型。
OSGi所具有的动态化、模块化、面向服务的特点使得它不再局限于嵌入式领域,而是成为一个通用的动态组件开发环境,在各个领域得到了大量应用,如家居网关、智能手机、汽车制造业等。近年来,随着Eclipse错误!未找到引用源。采用OSGi来重构其插件体系结构和Spring与OSGi的结合,OSGi在企业计算领域也得到了越来越广泛的应用,如IBM的WebSphere和Oracle/BEA的WebLogic等都使用了OSGi技术。
OSGi规范为单个JVM内的Java应用提供了一个高度动态和设计良好的服务模型,但企业计算领域大规模、异构性的特点为标准OSGi规范提出了支持分布式处理的需求,即要求OSGi能够支持远程机器结点上的服务发现与调用,并支持企业应用拓扑,从而提高可用率、可靠性及可伸缩性。因此,提供OSGi分布式扩展机制以支持多进程、多JVM、多个结点、多种语言的企业计算是亟需解决的问题。OSGi联盟针对企业计算领域对OSGi的需求于2007年成立了企业专家组。在2009年4月,OSGi联盟的企业专家组制定完成了针对OSGi分布式扩展的RFC 119规范,但该规范只是给出了一个通用的解决方案,并没有涉及到与具体技术相结合的具体实现细节。Apache CXF项目成立了一个名称为D-OSGi(Distributed OSGi)的子项目作为RFC 119规范的参考实现,D-OSGi使用Web Service来实现远程服务调用。但是D-OSGi在服务发现方面还不完善,不满足OSGi环境中对服务的高度动态性的要求。而且D-OSGi与企业计算领域的主流通信协议IIOP(CORBA标准的通信协议)不兼容,难以实现对现有大量遵循CORBA标准的应用系统的集成和互操作。
此外,在EclipseCon2007大会上还提出了一个名称为R-OSGi(Remoting-OSGi)的OSGi分布式处理项目。R-OSGi遵循OSGi规范,使用对接口进行字节码分析的方式来动态产生服务代理bundle,以实现远程服务的透明访问,并使用SLP(Service Location Protocol)实现远程服务发现。但是R-OSGi针对嵌入式领域采用了基于消息的特定的远程互操作协议,无法满足企业计算领域对于基于标准互操作协议(如IIOP)的非OSGi系统交互的需求,并且R-OSGi在服务使用上不透明,服务消费者要实现R-OSGi自定义的服务监听接口,对原有的OSGi编程模型有一定的侵入性。
发明内容
本发明的目的是克服现有技术中的OSGi不支持分布式处理的缺陷,从而提供一种基于CORBA的OSGi分布式扩展系统及其对应的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910207404.7/2.html,转载请声明来源钻瓜专利网。