OSGi 概述

OSGi 是一个与基于 Java™ 的系统相兼容的模块系统,用于实现动态组件模型。企业系统可以使用 OSGi 来改进运行时基础结构的可维护性。采用捆绑软件形式的应用程序可通过远程方式进行安装、启动、停止、更新和卸载,而无需重新启动。

OSGi 功能部件
OSGi 的优点

OSGi 功能部件

OSGi 工具包括下列主要功能部件:

适用于 OSGi 蓝图组件的容器
OSGi 应用程序框架包括 OSGi V4.2 蓝图组件模型的 Apache Software Foundation 的 Aries 开放式实现,该组件模型用于定义 Java 组件的标准依赖关系注入机制。该实现派生自 Spring Framework 并且对 OSGi 进行扩展,以在 OSGi 服务注册表中通过声明方式将组件接口注册为服务。
适用于组合捆绑软件的模型
OSGi 工具包括一个用于将应用程序组合到可部署单元中的模型。该单元可由多个捆绑软件组成,并且包括用于描述应用程序的构成捆绑软件的版本及外部位置的元数据。
运行时组件
OSGi 工具支持开发在 OSGi 框架中运行的 OSGi 应用程序、利用 Web 应用程序中常用的企业 Java 技术以及包括 Web 应用程序捆绑软件、远程服务集成和 JPA 的集成方案。
扩展
OSGi 工具包含胜过 OSGi 企业专家组规范的扩展以提供 OSGi 模块性与 Java 企业技术的完整集成。 特别是它提供了包括但不限于以下功能部件的支持:
  • 由多个通过动态生命周期版本化的捆绑软件组成的已隔离企业应用程序。
  • 蓝图组件的声明式事务和安全性。
  • 蓝图组件的容器管理的 JPA。
  • 消息驱动的蓝图组件。
  • 模块蓝图服务中资源引用的配置。
  • 基于注释的蓝图配置。
  • 本地 JNDI 与 OSGi 服务注册表之间的联合查找机制。
  • 充分声明式应用程序元数据以启用 SCA 组件类型定义的体现。

OSGi 的优点

OSGi 模块性提供了一种标准机制,用于解决 Java EE 应用程序所面临的问题。OSGi 框架提供了下列好处:
  • 应用程序可移植、更易于重新设计并且适合更改需求。
  • 该框架提供了 Spring Framework 的声明式组合件和简化的单元测试,但却以作为应用程序服务器运行时的一部分而提供的标准形式,而不是作为应用程序的一部分进行部署的第三方库。
  • 该框架与 Java EE 编程模型集成,从而允许您选择通过动态生命周期将 Web 应用程序作为一组已版本化的 OSGi 捆绑软件进行部署。
  • 它支持管理应用程序捆绑软件依赖关系和版本,从而简化并标准化了第三方库集成。
  • 该框架为由多个通过动态生命周期版本化的捆绑软件组成的企业应用程序提供了隔离。
  • 它有一个内置捆绑软件存储库,该存储库可以主管多个应用程序之间共享的常用及已版本化捆绑软件,以便每一个应用程序不部署它自己的每一个常用库的副本。
  • OSGi 应用程序可以访问外部捆绑软件存储库。
  • 该框架在模块级别增强了面向服务的设计。
  • OSGi 应用程序可由粗颗粒 SCA 组件组成。
指示主题类型的图标 概念主题
信息中心的条款和条件 | 反馈

时间戳记图标 最近一次更新时间: 2014 年 4 月 17 日

文件名:cosgi.html