ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 期待SCA、OSGI的天作之合

期待SCA、OSGI的天作之合

原创 Linux操作系统 作者:ITPUB_PMSpace 时间:2008-01-18 10:34:36 0 删除 编辑

我博客中以前的文章中对SCAOSGISpring曾做过一些粗略的比较,也一直在思考SCAOSGI能否走到一起,最终以什么样的形式结合。在OSGI主席Peter的博客上看到了BlueDavy的提问, Peter回答说SCAOSGI很多概念很相似,二者是天作之合(原话是match made in heaven),。但是毕竟SCAOSGI所关注的方面不太相同。一个是关注于语言无关的企业应用集成,一个更关注于运行环境中组件和服务的动态更新特性。

  在SCA规范正式版发布之前,总感觉缺少SCA容器打包部署方面的描述。终于在1.0版中看到了将打包部署作为了单独的一个章节列了出来。OSGIBundle可以将可以在SCA容器中部署。但对于OSGI的更进一步描述,在规范中也是闪烁其词。

  时过半年,SCAOSGI走向联合的趋势越来越明朗。可以看到在OSOASCA Assembly Model 1.0规范已经提到了将OSGI作为SCA的一种部署模式的参考实现。并且发布了Powerful Combination of SCA, Spring, and OSGi 的白皮书。白皮书中给出了SCASpringOSGI如何在一起工作的概览。

  OSGI联盟在20058月发布的R4规范,已经对组件和服务的部署、运行作了比较详细的描述,具体可参见Declarative Services规范。从部署描述符的格式上看,同SCA的元信息格式非常的相似,估计多半SCA规范在制定时参照了OSGI中的一些内容。

  Eclipse Con 2007中有不少关于OSGI方面的专题,How to tackle the problems of large scale applications in OSGi专题的最后也提到了OSGISCA的结合。 SCA容器在OSGI容器中运行,SCA容器实现为OSGI的一个BundleSCA Bundle需要实现服务与引用的绑定,同时可以考虑使用Declarative Services

从技术的角度看,SCA和OSGI有很多的相似,同时又有很多方面可以互补。SCA容器中的组件要求在运行时刻是隔离的,具体体现在Java实现中,要求不同的Composite具有不同的ClassLoader,这正是OSGI的强项,同时,对于服务的管理、动态更新等特性,SCA容器应该也是需要的。但是,OSGI也有其局限性,它只是一个Java平台之上的框架,而SCA需要面对的是多语言、多实现的集成应用环境。因此二者如何更好的结合,还需要在实践中不断的摸索。也期望SCA、OSGI能够修成正果。

1.jpg

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12639375/viewspace-151163/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-01-04

  • 博文量
    188
  • 访问量
    372254