企业中的 OSGi
企業中的OSGi |
| 時間:2009-03-25 07:05:11??來源:infoQ??作者:Alex Blewitt譯者 崔康? |
隨著最近GlassFish 3.0版“Prelude”,即Sun公司基于OSGi的Java EE 6服務器的發布,OSGi在企業中的應用已經覆蓋了幾乎所有后端服務器。最近,OSGi聯盟的一份新聞稿列舉了使用OSGi的廠商和技術:
- IBM的WebSphere
- Oracle的Weblogic
- Paramus的Infiniflow Service Fabric
- ProSyst的ModuleFusion
- Red Hat的JBoss
- SpringSource的SpringSource應用平臺
- Sun Microsystem的GlassFish企業服務器
Peter Kriens指出,Jonas——第一個基于OSGi的J2EE服務器,因為不是OSGi成員,所以沒有在名單中列出。他同時表示,SAP NetWeaver將來也會邁向OSGi。
正如InfoQ之前所報道的, 這些系統轉向OSGi的主要原因是為了更好的模塊化。這使得系統可以分解成更便于管理(和測試)的單元,同時提供更多可重用的組件庫。目前,大公司( IBM、甲骨文)一直在應用內部使用OSGi,沒有直接暴露給應用的客戶,但其他廠商( SpringSource )事實上則允許OSGi容器本身(而不僅僅是應用)對外開放其擴展性。
使用Maven構建的項目也同樣是組件化的,這導致一些人想知道OSGi在模塊化方面有什么特別之處。在Maven的模塊化和OSGi的運行時之間兩個最關鍵的區別是:
類似SpringSource's DM Server的應用服務器利用OSGi的動態特性部署Spring beans到OSGi容器中,允許運行時停止和重啟服務。Spring動態模塊框架在底層透明的處理關聯和運行時。
開源項目也在轉向OSGi。在Apache FelixOSGi服務器的刺激下,其他Apache服務器在它們的產品中生成OSGi元數據或者完全遷移,就像Apache Tuscany的最近遷移。對于那些不生成元數據的的開源項目,存在很多OSGi束庫(SpringSource企業束庫、OBR、Eclipse Orbit、Felix束庫等等),它們為帶特定注釋的開源Jars提供OSGi元數據。
隨著OSGi的成長,基于Web的和后端系統都直接構建在OSGi上。Linked In對OSGi的使用已經在他們的工程博客上討論過 ,你也可以看到科羅拉多2008軟件峰會的相關演講稿。甚至可以在亞馬遜EC2和iPhone上運行OSGi服務。
不論是直接還是間接使用,OSGi在企業中的應用機會正在逐步提高。隨著Spring框架成為應用開發的事實標準和Spring DM服務器的優勢,構建動態、模塊化的應用成為企業追逐的目標。
轉載于:https://www.cnblogs.com/lanzhi/archive/2009/03/26/6469544.html
總結
- 上一篇: Lotus,协作领域的常青树
- 下一篇: 程序语言中基本数值类型的分类