RT - OSGi:将OSGi框架与Java实时规范集成
1. 引言
服务是一方提供给另一方的行为或表现,与组件、对象、模块等概念不同,服务具有动态可发现性和动态可用性。服务请求者通常根据服务接口进行编译,在运行时查找并绑定服务接口的实现。服务实现的动态可用性意味着在运行时的某些时刻,服务接口的实现可供服务请求者查找和绑定,但在其他时候可能会被撤回。
基于服务的动态可发现性和动态可用性的服务导向架构(SOA),是一种将软件开发为服务请求者和服务提供者集合的方法。使用SOA开发软件的主要好处是,动态发现和动态可用性特性使软件能够进行有限形式的动态重新配置,即软件配置可以在不关闭应用程序的情况下更改。
2. OSGi框架
OSGi框架融合了服务导向架构的动态发现和动态可用性概念,以及基于组件的软件工程(CBSE)的模块化概念。它是一个基于Java的组件框架,具有JVM内的服务模型。应用程序开发者将应用程序开发和部署为多个Java组件(在OSGi框架中称为Bundles)。组件中的线程通常使用OSGi框架提供的服务注册表来注册和/或请求服务。
OSGi框架为应用程序提供了高度的动态重新配置能力,这不仅通过SOA的动态特性实现,还通过OSGi的生命周期操作实现。这些生命周期操作允许在运行时安装、卸载和更新组件。动态重新配置的优势在于提高了系统的可用性,OSGi应用程序在系统维护、演进和重新配置期间可以保持在线并可用,而大多数非OSGi应用程序通常需要离线进行维护和演进。
OSGi框架在许多不同领域的软件开发中是一个有吸引力的选择,如汽车行业、桌面计算(如集成开发环境)、家庭自动化和企业服务器等。然而,在实时系统(RTS)领域
超级会员免费看
订阅专栏 解锁全文
41

被折叠的 条评论
为什么被折叠?



