Posted on 2010-02-03 12:12
趙斌 閱讀(2514)
評論(0) 編輯 收藏 所屬分類:
1.技術區
Java模塊化,OSGi,以及Azure云計算
模塊化Java簡介
對Java的模塊化概念、歷史、來龍去脈進行了很好的介紹。了解模塊化的重要性,區分編譯時和運行時模塊化的差別,構建自己的Plugins來擴展系統,JSR 277(現已廢止)到JSR 291,Java 7將是模塊化的。
模塊化Java:靜態模塊化
使用OSGi來理解模塊化的概念,是很好的OSGi入門示例。重點是帶版本的依賴,使得多版本同時運行成為可能,為模塊進化提供了基礎。
模塊化Java:動態模塊化
精彩的就是這篇動態模塊化。
只要servlet引擎沒有保持對老版應用的引用,這些類就像其他Java對象一樣被垃圾回收器回收了。——可能這是平臺支撐熱部署的關鍵。
通過查找和綁定,使得每次動態獲得服務的引用,確保不會保持老版本的服務對象。實現的方式可以是context.getService(getServiceReference("java.sql.Driver")),或者用ServiceTracker來實現,使用ServiceTracker來管理服務依賴通常被認為是管理關系的好方法。還可以對服務的屬性進行過濾,以便選擇所需的服務。
關于Java 7模塊系統
通過OSGi實現邏輯分離,通過CXF實現物理分離,再用ASF將OSGi和CXF統一成服務,實現可配置的動態部署。
JSR-294引入了新的可見性關鍵字“module”,意味著模塊化成為語言特性,模塊之間的可見性限制將會由編譯器來負責檢查。
依賴、部署時依賴、可選依賴、依賴沖突,或許模塊之間的關系就是相互依賴的關系。
Bundle.update:模塊化的一年
感覺整個Java都在向模塊化發展,大量的第三方基于OSGi的創新正在不斷涌現,新的規范甚至包括WAB,所以,我們的產品內部使用OSGi是完全沒有問題的。
同時,要和其他的應用打交道,則要通過WS-*,這是我們表現出完全開放性的一面。
Azure于今日正式商用收費
云計算終于來了,不知道是否真的便宜?
Windows Azure Platform是微軟完整的云計算平臺,目前包含了如下3大部分:
- Windows Azure:即運行在云中的一個操作系統,對于用戶來說是虛擬且透明的,其中提供了一系列底層服務。
- SQL Azure:運行于云中的一個關系數據庫,和SQL Server 2008基本一致。
- AppFabric:全名是Windows Azure platform AppFabric,提供了訪問控制、服務總線等服務,用于把基礎應用連接到云中。
云操作系統 + 云數據庫 + 云平臺,其實,我們提供的ASF+ORG+AC等,相當于Azure的云平臺。
Google 的BigTable則是Google的云數據庫,Google還多一個云操作系統GFS。
【
趙斌原創,保留一切權利,轉載請保留引用:
m.tkk7.com/zhaobin,注明轉載除外,謝謝!】