OSGi、SOA、SCA
OSGi、SOA以及SCA領域的相關Blog。
摘要: 摘自我那本6月份要上市的,但目前名字還沒完全確定的書,由于書中涵蓋的更多的為構建高性能分布式Java應用所需要的基礎知識,也許改成了《通往高性能分布式Java應用之路》,主要是闡述下為什么大型應用需要SOA,以及eBay的例子,blog全文請見:http://bluedavy.com/?p=30
閱讀全文
摘要: 在QCon SF 2009的SOA分會場上,eBay的架構師講了一個SOA @ eBay的PPT,正好和我的工作有很多的交叉點,于是比較認真的看了下這個PPT,感興趣的同學可以從這里下載:http://qconsf.com/sf2009/file?path=/qcon-sanfran-2009/slides/SastryMalladi_SOAEBayHowIsItAHit.pdf,在這個PPT中可以看到eBay對于SOA的看法以及他們目前的做法,自己也是做這方面工作的,就在這篇blog中介紹下這個PPT以及自己對于SOA的一些看法。
閱讀全文
摘要: 和清華學子做了一次關于OSGi的交流,在此公開下這個PPT,:),這個PPT是我寫的最長的一個OSGi PPT,涵蓋的內容主要是OSGi標準方面的知識以及Equinox使用的一些知識,感興趣的同學可以下載下: http://www.bluedavy.com/opentopic/OSGi20094qh.pptx
閱讀全文
摘要: 這本書的名號有:國內第一本OSGi中文書,全球第二本OSGi技術書,少數的能夠領先于英文技術原創書出版的中文書籍,這些都乃虛名,最重要的是希望這本書能真正的為希望了解、學習或深入掌握OSGi;希望了解、學習如何編寫模塊化、動態化的Java應用的Java技術人員提供一些幫助,那么也就不枉這本書的出版了,很榮幸能參與這本書的編寫,圓了自己兩年前出一本OSGi書的夢,下面放上一些本書的封面的圖片show下。
閱讀全文
摘要: Equinox的設計非常經典,其在擴展方面提供了很多的支持,同樣包括類加載方面的控制,除了通過標準的org.osgi.framework.bootdelegation以及equinox提供的osgi.parentClassLoader這兩個屬性來簡單的控制類加載之外,還可通過實現ClassLoaderDelegateHook來更為靈活的控制類加載。
閱讀全文
摘要: 很不容易,經過兩個多月兩個人的努力,終于完成了《OSGi原理與最佳實踐》一書的草稿,目前正在review過程,預計將在7月底上市,而由于國外的那本《OSGi in action》將出版時間推遲到11月了,《OSGi原理與最佳實踐》這本書也將成為全球第二本OSGi的書籍(很遺憾,德國之前出版了第一本),:),現將本書的目錄公布如下,上市的書也許會稍有改動,但應該會大體一致。
閱讀全文
摘要: 這是Lifecycle Layer中的最大改進,在之前的規范中只是簡單的描述了下框架的啟動和關閉,在制定了這個規范后,以后無論是啟動equinox還是felix,都可采用同樣的方式啟動,詳細的來看看,本文摘自《OSGi原理與最佳實踐》。
閱讀全文
摘要: 本文內容同樣摘自《OSGi原理與最佳實踐》,在之前的blog中也摘選了部分內容分析了Equinox的動態化,在這里再試驗下Felix的動態化,關注點為:“即插即用”、“熱部署”、“即刪即無”,看下Felix在這幾方面的表現和Equinox有什么不同。
閱讀全文
摘要: 對于采用OSGi來做系統的人而言,ClassLoader的問題必然是頭號需要解決的問題,如果又是個需要遠程通訊的OSGi應用的話,那么反序列化的classloader問題幾乎可以肯定是會碰到的,來看看在如今流行的兩種序列化、反序列化協議:java/hessian中如何使用自定義的classloader。
java/hessian并不提供直接的傳入ClassLoader類來改變反序列化時采用的ClassLoader,hessian采用的為使用當前線程的上下文ClassLoader來加載反序列化的類,java則采用堆棧上最近的一個ClassLoader類來加載,可以認為就是調用類所在的ClassLoader來加載,但在OSGi應用中,通常采用以上默認的行為來反序列化加載類是會出問題的,因此需要采用自定義的。
閱讀全文
摘要: 對于想使用Equinox來構建OSGi應用的同學們而言,掌握Equinox是如何加載Bundle中的Class無疑是相當重要的,這樣在碰到各類ClassNotFoundException的時候也就有底了,否則可能出現的ClassNotFoundException會多的讓你非常的頭疼,本文提取自《OSGi原理與最佳實踐》,介紹下equinox是如何來加載Bundle中的class的。
閱讀全文
摘要: OSGi最吸引人的特性除了模塊化之外,就是動態化了,在我之前寫的OSGi實戰以及進階兩篇Opendoc中,都有相關的示例,但不知道大家有沒有注意,在兩篇Opendoc中都未提及到bundle本身的更新,而基本都是以新增服務實現的bundle以及停止服務時限的bundle為例,并且相對而言是個比較簡單的例子,動態化在java界更明確的詞也許是hot deployment,而hot deployment的實現并不容易,同樣,即使你采用OSGi,但也不代表你的應用就具備了hot deployment的能力,在hot deployment上,完美的結果就是當更新完成后,新的執行請求就在新的代碼邏輯上正確的執行,就像沒發生過更新這回事樣,但實際要做到這樣的效果,遠沒這么容易,即使是基于OSGi也同樣如此,No magic & no silver bullet,在本篇blog中我們就來具體的看看。
閱讀全文
摘要: 把自己寫的兩篇opendoc和Book統一放入此blog中提供下載,避免占據我blog的兩個置頂位,:)
閱讀全文
摘要: 在使用OSGi時,有些時候會需要在OSGi容器外獲取OSGi服務,加載OSGi容器加載的class,或者說需要內嵌OSGi容器,本篇blog以一個簡單的例子來說明如何基于equinox實現OSGi容器的內嵌,或者說通過程序來啟動equinox,同時也通過此例子展示下如何在容器外來獲取OSGi服務以及加載OSGi容器里面其他插件的class,同時還會附送一個如何讓OSGi容器里的插件能加載到OSGi容器外的類的方法。
閱讀全文
摘要: 之前的Opendoc中沒有涉及過此部分的內容,maven又是現在非常流行的java的工具,再加上到目前為止搭建OSGi Maven開發和部署的環境還是比較的麻煩,覺得有必要寫篇這樣的blog,:),在這篇blog中來看下如何搭建一個比較好用的OSGi Maven開發和部署環境,看看我在搭建一個這樣的環境中的痛苦歷程。
閱讀全文
摘要: 隨著OSGi近兩年的迅猛發展,尤其是Java企業應用領域廠商對OSGi的認同,大家對于OSGi的新版規范的關注遠遠超過了之前的幾個版本,近來OSGi終于是放出了傳聞已久的R 4.2的Early Draft,其實從Early Draft來看,我覺得完全可以認為不僅僅是一個小版本的升級了,甚至可以認為是R5了,因為R 4.2增強的東西還是非常多的,其中就包括了大家期待已久的RFC119,不過沒看到傳說中的RFC66,有一丁點的失望,不過相信后面的Draft中應該會加上,:),這樣看來,R5更是值得期待了,讓我們先來一起品嘗一下4.2 Early Draft這道大餐。
閱讀全文
Full OSGi、SOA、SCA Archive