OSGi分布式处理扩展机制的研究与实现
发布时间:2020-10-25 06:24
近年来,动态、模块化、面向服务的OSGi技术在企业计算领域得到越来越广泛的应用,同时企业计算领域分布、异构的特点对集中式的OSGi规范提出了分布式扩展的需求。然而,现有OSGi分布式扩展机制存在如下三个较突出的问题:对OSGi编程模型存在一定的侵入性;不支持与企业计算领域中大量遗留的CORBA系统互操作;实现技术不适用于资源受限的嵌入式领域。 CORBA是非常成熟的分布式中间件技术,具有位置透明、与具体编程语言无关等特性。本文使用CORBA技术作为OSGi分布式扩展的架构基础,以非侵入性、通用性和良好互操作性为设计目标提出了基于CORBA的OSGi分布式扩展模型CDOM,给出了模型的分布式扩展机制,并以上述模型为基础,设计并实现了基于CORBA的OSGi分布式扩展系统CDOS。CDOS通过CORBA DII/DSI和Java反射技术实现远程服务方法调用,并使用CORBA名字服务来实现远程服务发现,保持了OSGi面向服务的编程模型和轻量级特点,并支持OSGi应用与CORBA应用的互操作,这与OSGi分布式扩展规范所推荐的实现思想相一致,较好地达到了企业计算领域对OSGi分布式扩展提出的目标。 本文主要研究工作包括以下几个方面: (一)研究了OSGi分布式扩展的基础概念、关键技术,对比分析典型项目,选择CORBA技术作为OSGi分布式扩展的架构基础。 (二)提出了基于CORBA的OSGi分布式扩展模型CDOM。该模型遵循OSGi标准规范,能够在保持OSGi的编程模型和轻量级特性的基础上实现OSGi分布式处理,并支持OSGi应用与CORBA应用的互操作。给出了CDOM的设计原则、结构组成和分布式扩展机制,最后给出了模型的分析与评估。 (三)基于CDOM模型,设计并实现了基于CORBA的OSGi分布式扩展系统CDOS。通过CORBA DII\DSI和Java反射技术实现远程服务方法调用,并使用CORBA名字服务来实现远程服务发现。 (四)在CDOS原型系统上,结合实际场景做了功能测试和性能测试分析。结果表明:CDOS能够保持OSGi原有的编程模型,可以将集中式的OSGi应用透明地转变为分布式应用,支持OSGi应用与CORBA应用的互操作,在远程服务方法调用上具有较好的性能优势,并适用于资源受限的嵌入式领域。
【学位单位】:国防科学技术大学
【学位级别】:硕士
【学位年份】:2009
【中图分类】:TP338.8
【部分图文】:
适配器模式主要是指把 OSGi 服务与 Jini 服务进行相互转换以达到利用 Jini 的分布式能力来扩展 OSGi 服务平台的目的。图2.4 适配器模式Jini 的基本思想是为网络中的服务提供一个可以统一管理的运行时基础设施。Jini 基础设施的核心是 LUS(Lookup Server)。如图 2.5 所示,基于 Jini 的服务发现与获取主要有以下四步:第一步,网络中的节点通过预先配置或广播发现 LUS,返回 LUS 代理;第二步,网络中对外提供服务的节点通过 LUS 发布自身提供的服务;第三步,网络中使用服务的节点向 LUS 服务器发送查询请求;第四步,网络中使用服务的节点获取服务代理并使用服务。Lookup ServerJini ClientJini DeviceDicoveryLookupS
国防科学技术大学研究生院硕士学位论文系统开发新的应用程序和系统集成[38]。CORBA 对象封装了方法的实现并提供公共接口,具有位置透明、与具言无关等特性,从而降低了分布应用开发的复杂性。良好的封装性同时 CORBA 对象的可重用性,有利于降低应用开发的费用。CORBA 体系结8)的核心是 ORB(Object Request Broker,对象请求代理)。ORB 是 C基础,是在分布环境下,CORBA 应用所使用的、基于对象模型的软件总基本职责是解决对象应用的请求和建立应用对象之间的联结,通过标准这种联结独立于所使用的硬件和软件的平台,从而保证了对平台的透明作系统、网络协议和编程语言的透明性。图 2.8 是 ORB 的结构示意图。
OSGi客户端使用远程CORBA服务3)如图3.3所示,当CORBA服务消费者和OSGi服务提供者分布在网络中两个不同的机器节点上时,CORBA客户端无法发现远程OSGi框架上的服务,更无法实现对OSGi服务的远程调用
【引证文献】
本文编号:2855592
【学位单位】:国防科学技术大学
【学位级别】:硕士
【学位年份】:2009
【中图分类】:TP338.8
【部分图文】:
适配器模式主要是指把 OSGi 服务与 Jini 服务进行相互转换以达到利用 Jini 的分布式能力来扩展 OSGi 服务平台的目的。图2.4 适配器模式Jini 的基本思想是为网络中的服务提供一个可以统一管理的运行时基础设施。Jini 基础设施的核心是 LUS(Lookup Server)。如图 2.5 所示,基于 Jini 的服务发现与获取主要有以下四步:第一步,网络中的节点通过预先配置或广播发现 LUS,返回 LUS 代理;第二步,网络中对外提供服务的节点通过 LUS 发布自身提供的服务;第三步,网络中使用服务的节点向 LUS 服务器发送查询请求;第四步,网络中使用服务的节点获取服务代理并使用服务。Lookup ServerJini ClientJini DeviceDicoveryLookupS
国防科学技术大学研究生院硕士学位论文系统开发新的应用程序和系统集成[38]。CORBA 对象封装了方法的实现并提供公共接口,具有位置透明、与具言无关等特性,从而降低了分布应用开发的复杂性。良好的封装性同时 CORBA 对象的可重用性,有利于降低应用开发的费用。CORBA 体系结8)的核心是 ORB(Object Request Broker,对象请求代理)。ORB 是 C基础,是在分布环境下,CORBA 应用所使用的、基于对象模型的软件总基本职责是解决对象应用的请求和建立应用对象之间的联结,通过标准这种联结独立于所使用的硬件和软件的平台,从而保证了对平台的透明作系统、网络协议和编程语言的透明性。图 2.8 是 ORB 的结构示意图。
OSGi客户端使用远程CORBA服务3)如图3.3所示,当CORBA服务消费者和OSGi服务提供者分布在网络中两个不同的机器节点上时,CORBA客户端无法发现远程OSGi框架上的服务,更无法实现对OSGi服务的远程调用
【引证文献】
相关硕士学位论文 前1条
1 刘肖宇;基于整合框架的OSGi分布式扩展机制研究[D];云南大学;2011年
本文编号:2855592
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2855592.html