|
|
|
|
我博客中以前的文章中对 SCA、 OSGI、Spring曾做过一些粗略的比较,也一直在思考 SCA、OSGI能否走到一起,最终以什么样的形式结合。在OSGI主席 Peter的博客上看到了 BlueDavy的提问, Peter回答说 SCA和OSGI很多概念很相似,二者是天作之合(原话是match made in heaven),。但是毕竟 SCA和OSGI所关注的方面不太相同。一个是关注于语言无关的企业应用集成,一个更关注于运行环境中组件和服务的动态更新特性。
在 SCA规范正式版发布之前,总感觉缺少 SCA容器打包部署方面的描述。终于在1.0版中看到了将打包部署作为了单独的一个章节列了出来。OSGI的Bundle可以将可以在 SCA容器中部署。但对于OSGI的更进一步描述,在规范中也是闪烁其词。
从技术的角度看, SCA和OSGI有很多的相似,同时又有很多方面可以互补。 SCA容器中的组件要求在运行时刻是隔离的,具体体现在Java实现中,要求不同的Composite具有不同的ClassLoader,这正是OSGI的强项,同时,对于服务的管理、动态更新等特性, SCA容器应该也是需要的。但是,OSGI也有其局限性,它只是一个Java平台之上的框架,而 SCA需要面对的是多语言、多实现的集成应用环境。因此二者如何更好的结合,还需要在实践中不断的摸索。也期望 SCA、OSGI能够修成正果。
Ps:如果要给 SCA、OSGI分个公母的话,感觉应该OSGI更象个女的,而且是体贴贤惠的女人, SCA相对粗旷、大气一些,同时 SCA是比OSGI小六七岁的小弟弟。这年头流行姐弟恋啊!!!两人腻腻歪歪一两年,也该确定关系了。 |
|
本文章参加了《SOA中国路线图》博客大赢家活动!
|