模块化服务规范——OSGI

什么是OSGI

OSGi(Open Service Gateway Initiative)有双重含义。一方面它指OSGi Alliance组织;另一方面指该组织制定的一个基于Java语言的服务(业务)规范——OSGi服务平台(Service Platform)。

OSGi Alliance是一个由Sun MicrosystemsIBM爱立信等于1999年3月成立的开放的标准化组织, 最初名为Connected Alliance。该组织及其标准原本主要目的在于使服务提供商通过住宅网关,为各种家庭智能设备提供各种服务。目前该平台逐渐成为一个为室内、交通工具、移动电话和其他环境下的所有类型的网络设备的应用程序和服务进行传递和远程管理的开放式服务平台。

该规范和核心部分是一个框架 ,其中定义了应用程序的生命周期模式和服务注册。基于这个框架定义了大量的OSGi服务:日志配置管理、偏好,HTTP(运行servlet)、XML分析、设备访问、软件包管理、许可管理、星级、用户管理、IO连接、连线管理、Jini和 UPnP

这个框架实现了一个优雅、完整和动态的组件模型。应用程序(称为bundle)无需重新引导可以被远程安装、启动、升级和卸载(其中Java包/类的管理被详细定义)。API中还定义了运行远程下载管理政策的生命周期管理服务注册允许bundles去检测新服务和取消的服务,然后相应配合。

OSGi原先关注于服务网关,其实可用于多个方面。现在OSGi规范已经用于从移动电话到开源的Eclipse(其中包括了与IBM的OSGi框架SMF兼容的开源版本)。 OSGi服务平台的应用包括:服务网关、 汽车移动电话、 工业自动化建筑物自动化、 PDA 网格计算娱乐(如iPronto)、和 IDE

OSGi规范是由成员通过公开的程序开发,对公众免费而且没有许可证限制。但是OSGi Alliance的兼容性程序只对成员开放,目前有12个兼容的实现

2003年Eclipse选择OSGi作为其插件的底层运行时架构。Equinox project对该理念进行了实验,2004年6月在Eclipse3 R3中发布。ProSyst是面向OSGi开发者的Eclipse插件。

2003年10月, 诺基亚摩托罗拉ProSyst 和其他OSGi成员组建了Mobile Expert Group (MEG)为下一代智能手机规范业务平台,做为对 MIDP 和CDC的补充。

OSGi(Open Service Gateway Initiative)技术是面向Java的动态模型系统。OSGi服务平台向Java提供服务,这些服务使Java成为软件集成和软件开发的首选环境。 Java提供在多个平台支持产品的可移植性。OSGi技术提供允许应用程序使用精炼、可重用和可协作的组件构建的标准化原语。这些组件能够组装进一个应用 和部署中。

OSGi亦称做Java语言的动态模块系统,它为模块化应用的开发定义了一个基础架构。OSGi容器已有多家开源实现,比如 Knoflerfish、Equinox和Apache的Felix。您可以通过这些容器,把您的应用程序劈分为多个模块单元,这样,您就可以更容易地管 理这些模块单元之间的交叉依赖关系。

OSGi的主要职责就是为了让开发者能够建动态化、模块化的Java系统。

传统的开发和部署的局限性

1、java讲求的是面向接口编程,比如接口A有两个实现类B和C,当在运行时需要将B转换成C的时候,就需要重新启动服务,否则是无法实现的,也就是说J2EE本身是不提供这种支持的。

2、JAR文件规范粒度太粗,没有足够的约束力。运行期,如果这些第三方Jar包不存在,或者命名存在差异,或者提供了不同JAR包版本,则会出现各种不同结果。Java SE/Java EE平台没有细化这方面的任何内容。

3、由于Java EE平台规范没有针对Java package引入版本支持,这使得在同一企业应用中几乎不可能启用同一JAR包的不同版本。与此同时,现有的Java EE技术体系难以动态升级、替换生产环境,实际的做法是,每次部署新版应用时,都需要重启应用或Java EE容器,进而影响到在线用户。

4、维护成本较高。因为企业应用的模块化程度不高,即Java EE的模块化更多地是停留在逻辑概念层面。通常,我们会将企业应用以单个WAR包形式存在,其中内置了当前应用所有的内容,包括.class、.jsp、.js等资源。很显然,这给维护工作带来挑战,毕竟升级或修改WAR包中的任何内容都可能会波及到整个WAR包。这就要求,每次升级生产环境之前,都必须对整个WAR包的各个方面进行完整的回归测试,进而增加了不必要的维护成本,包括人力和物力成本。

5、开发不具备模块化的特性,一般企业中项目往往是放到一个工程中,这样造成的后果是模块化能力不强,难于维护,越大越不容易维护。

OSGI的优缺点

a) 您可以在不重启容器的情况下,动态地安装、卸载、启动和停止您的应用程序中的不同模块;

b) 对于您应用程序中的某一特定模块,容器可以同时运行该模块的多个版本;

c) OSGi为开发嵌入式应用、移动应用、富互联网应用(RIA)提供了非常优秀的基础架构

OSGI的分类

主要分成以下三个部分:

1、OSGi服务平台Core规范及服务集合。这类似于Java SE平台。

2、OSGi服务平台Residential规范。这类似于Java ME平台。

3、OSGi服务平台Enterprise规范。这类似于Java EE平台。

使用OSGI实现SOA

模块化设计是软件设计的一个基本思想,同时作为SOA应用,一个很重要的需求就是要方便用户扩展,利用扩展向SOA应用添加新功能,并能够很方便地和应用 本身做无缝集成。这就要求SOA应用中的模块提供可接入的扩展实现,还可以提供进一步扩展的能力。OSGi具备构造满足这样特点的SOA应用模块的能力。 OSGi提供了一个微内核的机制,实现了模块的可插拔,并为模块定义了一个清晰的物理格式,保证了模块开发与复用的一致性。

详细的内容可以参考

http://book.51cto.com/art/200912/173733.htm

OSGI和云计算

云计算是当前比较热的一个话题,个人认为,在云计算的实现模式中,osgi是一个非常好的标准,用于实现松耦合的saas和paas层。

但是具体在未来的发展中是否能够成为业界的标准有待验证。

时间: 2024-09-21 17:30:49

模块化服务规范——OSGI的相关文章

《第三方电子商务交易平台服务规范》

第一财讯:商务部发布文件规范第三方电子商务交易平台的经营活动,鼓励平台经营者设立冷静期制度,允许消费者在冷静期内无理由取消订单. 这份名为<第三方电子商务交易平台服务规范>的文件指出,要求第三方交易平台经营者对站内经营者的资质.提供的服务和产品进行严格规范,对涉及违法经营的可以暂停或终止其交易. 文件要求,第三方交易平台同时利用自有平台进行网上商品(服务)交易的,不得相互串通,利用自身便利操纵市场价格,扰乱市场秩序,损害其他经营者或者消费者的合法权益. 规范还要求第三方电子商务交易平台采用的电

在北京召开电子邮件营销服务规范第一次研讨会

为进一步规范电子邮件营销市场,建立有效的电子邮件营销服务规范,2012年11月6日,中国互联网协会反垃圾信息中心联合中国互联网协会研究部,组织业内知名电子邮箱服务提供商新浪.网易.TOM.263.万网.腾讯.搜狐.21CN.139邮箱及电子邮件营销服务提供商webpower.epsilon.灵动.厦门银禾.Splio.邮景在北京召开电子邮件营销服务规范第一次研讨会. 该会议旨在共同探讨出适合中国电子邮件领域的邮件营销服务行业规范,使电子邮件营销服务发挥应有的商业价值,同时帮助电子邮箱服务提供商减

上海发布网络游戏服务规范

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 5月19日,<上海市网络游戏服务规范>向社会发布,这是市信息服务业行业协会联合盛大网络.久游网.第九城市.5173等网游企业,共同起草制定的"游戏规则".以此为基础,上海地方标准<网络游戏行业服务规范>也进入制订程序,成为国内首部与网络游戏相关的地方标准. 这部企业联合标准性质的<服务规范&g

3G服务规范昨日起实行

本地可视电话接通率不小于85%:电信经营方免费向用户提供话费清单,对用户信息保密 本报讯 (记者 周旭)工业和信息化部发布的<第三代移动通信业务服务规范(试行)>昨日起实施,<规范>对3G通信质量等提出了诸多量化标准.如,网内本地视频通话接通率不得小于85%,电信业务经营者要免费向所有用户提供收费详细清单查询,以及依照法律和有关规定对用户资料负有保密义务等. 可视电话接通率≥85% 在通信质量方面,<规范>要求,同一移动网内的本地可视电话呼叫网络接通率应不小于85%:国

3G服务规范出台助产业良性发展

作者:杨庆广 <规范>的推出将促进运营商提升3G服务水平,消费者也将从中受益. 工业和信息化部近日发布了<第三代移动通信业务服务规范(试行)>(以下简称<规范>),对3G通信业务服务质量和通信质量都提出了具体的规范性要求.<规范>的推出对于提升运营商3G服务质量,规范运营商3G运营行为都有着积极的意义.尤其是我国3G运营尚处于初级阶段,3G业务的技术能力和运营经验积累还有待提升,<规范>的及时推出将有助于提升我国3G产业的整体技术.服务能力,同时

3G服务规范6月1日起实施:20秒内需可接入网络

6月1日,工业和信息化部发布的<第三代移动通信业务服务规范(试行)>(以下简称"<规范>")将正式实施,该<规范>对3G通信服务的通信质量和服务质量提出了诸多量化标准. 网内本地视频通话接通率不小于85% <规范>对3G通信业务的通信质量进行了量化规范,如规定同一移动网内的本地可视电话呼叫网络接通率应不小于85%:国内可视电话长途呼叫网络接通率应不小于82%.两个或多个移动网间呼叫,或移动与固定网间呼叫,网络接通率应不小于80%. 对于其

3G通信服务规范开始正式实施

日前,工业和信息化部关于<第三代移动通信服务规范(试行)的通知>正式实施.这意味着3G业务,运营商不但要保证用户的3G终端在20秒内接入网络,还要做好免费账单查询的服务和做好用户信息保密的义务. 早在4月20日,工信部就印发了该通知,对3G的通信业务的服务和通信质量提出了新要求.对于<规范>中明确指出的,电信业务经营者应根据用户的需要,免费向用户提供收费详细清单(含预付费业务)查询.收费详细清单原始数据保留期限至少为5个月这一项.(任民) 据了解,话费详单不但可以在网上营业厅查询电

广东联通制定3G服务规范

6月1日,工业和信息化部发布的<第三代移动通信业务服务规范(试行)>(以下简称<规范>)正式实施,该<规范>对3G通信服务的通信质量和服务质量提出了诸多量化标准.记者获悉,目前已正式启动3G试商用友好体验的广东联通在贯彻工信部<规范>的基础上,制定了公司的3G业务规范和 客服规范,对联通3G的重点业务.计费信控原则.产品生产流程.业务受理流程.客户服务规范等明确了统一的要求. 3G用户可退预存话费 中国联通广东公司(以下简称"广东联通")

《分布式光伏发电项目服务规范》进入报批阶段

目前,国内首个涉及分布式光伏发电 工程全过程服务行为的地方标准--<分布式光伏 发电项目服务规范>已完成初稿并正进入报批阶段.该标准由上海市节能工程技术协会.上海市质量监督检验技术研究院.近二十余家光伏企业与行业技术专家共同参与起草. 由于我国分布式光伏发电项目建设标准长期缺失,导致电站前期设计不规范.施工不达标,甚至进一步引发在项目后期运维过程中无法进行有效甄选和准确分析等一系列问题. 同时,由于标准缺失,造成政府投资验收无标准,企业投资建设无依据,严重影响了我国分布式光伏产业健康有序发展.