OSGI典型的应用案例

OSGI典型的应用案例主要有两个:分别是Eclipse和BMW汽车的应用控制系统。

Eclipse

       Eclipse作为Java业界成功的IDE project,在3.0以前的版本它采用的是自己设计的一套插件体系结构,而Eclipse的插件体系结构在整个业界都是非常知名的,也是被认为非常成功的一种设计,但Eclipse在3.0版本时却做了一个重大决度,就是推翻它自己以前的插件体系结构(虽然开始只是做兼容的方式,随着版本的逐渐升高已经开始逐步的替换工作了),而转为直接采用OSGI作为其插件体系结构,这到底是为什么呢?

       Eclipse的插件体系结构和OSGI的思想非常的耦合,都强调微核+系统插件+应用插件的概念,Eclipse之所以要抛弃自己那套已经比较成熟的插件体系结构而转而采用OSGI,就是因为OSGI的规范性以及OSGI对于插件体系结构更为完整的定义,当然,还有一些官方性质的原因,这些原因在这里暂且不提,Eclipse采用OSGI作为其插件体系结构的成功是很明显的,在Eclipse 3.1版本以后大家可以明显的感觉到启动速度的提升,同时也使得可以在运行时对插件进行管理,更明显的提升是插件的开发更加的规范,从而可以使用很多已有的OSGI插件。

        Eclipse同时也带给了业界良好的插件系统的体验以及插件系统的开发经验。


BMW汽车的应用控制系统

       BMW汽车的应用控制系统采用OSGI作为其底层架构,估计这一定程度上颠覆了很多人对于Java的认识,很多人都认为基于java的系统低效,不可能用于汽车这样的应用控制系统上,在EclipseCon 2006会议上BMW采用OSGI得到了证实,估计是猜想会被很多人怀疑,演讲者在PPT上讲了下BMW汽车的应用控制系统,这套系统主要用来控制汽车上的音箱、灯光等等设备,总共由1000多个Bundle构成,但BMW汽车的应用控制系统启动时间却只需要3.5秒,是不是很令人惊讶呢,这也从很大程度上反应了采用OSGI的系统的效率并不会低。

这两个非常成功的案例向大家证明了基于OSGI开发系统的可行性,同时这个两个成功案例的足够的知名性以及优秀的使用、技术效果也为OSGI的推广铺设了不错的基础,到目前为止,关于OSGI被商业领域(例如IBM P5服务器系列、Websphere V6.1、Lotus Sametime、Adobe CS2等)、知名开源软件领域(例如Apache等)采用的消息已经是不断的传出,可以看出OSGI在服务器端应用、企业应用中已经开始广泛流行了,而这对于OSGI更好的发展成为支撑服务器端应用和企业应用的规范会起到很好的推动作用。

你可能感兴趣的:(eclipse,企业应用,osgi,OSGI典型的应用案例,BMW)