Tuscany Home
 

WebX基于OSGi改造的可行性报告-采用OSGi的意义

From Tuscany中文社区

Jump to: navigation, search

回到报告首页


目录

[编辑] 可插拔的系统

估计很多人都接触过路由器,大部分的路由器都支持模块的热插拔,这就意味着可以在路由器运行的状况下给它动态的增加新的功能或者卸载不需要的功能,硬件界的这种热插拔技术一直就是软件界所追求的,而OSGI则使得热插拔技术在软件界成为现实。基于OSGI的系统,可通过安装新的Bundle、更新或停止现有的Bundle来实现系统功能的插拔。

[编辑] 可动态改变行为的系统

在业界可插拔的系统其实并不少,但可动态改变行为的系统并不多:JMX,JMX和OSGI在动态改变行为方面绝对不是一个级别的,OSGI有一整套完整的机制去实现动态改变系统行为。基于这个基础上可以做出更为复杂得多的动态改变系统行为的支持。


可插拔、可动态改变行为从根本上保证了系统在运行期足够的灵活性和扩展性。

[编辑] 稳定、高效的系统

基于OSGI的系统采用的是微核机制,微核机制保证了系统的稳定性,微核机制的系统只要微核是稳定运行的,那么系统就不会崩溃,也就是说基于OSGI的系统不会受到运行在其中的Bundle的影响,不会因为Bundle的崩溃而导致整个系统的崩溃。


OSGI的动态性原则保证了系统的高效,只有在请求发生时OSGI才去完全加载、启动相应的Bundle、Service。

[编辑] 规范的、可积累的模块

规范的模块开发方式其实是大家都期盼的,尤其是对于我们这样的公司。规范的模块开发方式就意味着规范的人员技能培养体系、规范的人员技能要求以及模块的复用,这对于我们来讲是很重要的。这和我们公司推进的组件化不谋而合,为组件化在技术上提供了支撑。我们以前提倡组件化,只是在规范和复用上做了定义和规范,还没有在技术层面上提供统一的组件运行环境,而OSGI为这个问题提供了解决方案,基于OSGI的系统采用规范的模块开发、部署方式构建系统。


当然,采用OSGI作为规范的模块开发、部署方式自然给现有梯队提出了新的要求,对于设计师而言,需要学习新的基于OSGI的模块分解、设计方式,对于开发人员而言,需要学习新的基于OSGI的开发方式,但对于公司形成规范的模块开发方式能带来的回报而言,这样的付出是值得的,而且,这个学习成本并不是很高。

[编辑] 强大的背景支持

查看一下OSGI联盟的成员列表就会发现很多业界巨擎,这对于技术的成熟和推广是很有意义的:BEA Systems, Inc.、Ericsson Mobile Platforms AB、IBM Corporation、Motorola, Inc.、NEC Corporation、Nokia Corporation、ProSyst Software GmbH、Red Hat、Samsung Electronics Co., Ltd.、SAP AG、Siemens AG、SpringSource、Sun Microsystems, Inc.等


回到报告首页

Personal tools