TPF插件管理框架功能、實現以及下載

           

                 OSGi在應用時具備了典型的微核系統的特點,但對于實際項目/產品型的應用而言,這個微核有些過于底層了,為什么這么說呢?

          對于實際項目/產品型的應用而言,何謂其微核呢,應該說其腳手架或開發平臺才是它的微核,而并非僅僅是OSGi框架,當然,也可以將自己的腳手架或開發平臺以Fragment-Host的方式綁定到OSGiSystem Bundle上去,但這樣的做法無疑有些evil了,TPF誕生的最主要的目的就是形成一個應用級的微核的概念,使得我們在管理實際的項目和產品時,能夠將腳手架和實際的業務應用模塊分離管理,讓腳手架也變成微核,這樣在管理時就可以做到對應用系統的統一管理,而同時保持一個含應用意義的微核(也可以認為是開發平臺)的穩定運行,在具備了TPF的情況下,就可以將應用系統從部署上分為腳手架和應用系統,而在管理上也可以單獨對應用系統進行管理,如啟動應用系統、停止應用系統,同時避免應用開發人員對腳手架無意的修改。

                 在本篇文檔中將介紹TPF提供的功能、TPF實現的方法以及TPF的下載地址。

          功能

                 TPFweb形式來管理TPF中的插件,該web管理端提供了以下功能:

          l         插件的安裝

          在插件的安裝上TPF支持兩種形式:

          n         手工輸入插件的地址

          可用于實現位于服務器上的目錄形式的插件的安裝。

          n         選擇插件文件

          可用于實現遠程安裝插件至服務器或安裝服務器上的插件,這些插件必須是zipjar格式的。

          上傳至服務器的路徑在TPFcn.org.osgi.tpf.webconsoleMANIFEST.MF中指定。

          l         插件的管理

          TPF僅管理通過TPF Web管理端安裝的插件,通過install方式在OSGi console中安裝的插件TPF將不進行管理。

          TPF支持插件的啟動、更新、停止、卸載的管理。

          l         插件MANIFEST.MF修改的支持

          TPF支持修改插件的MANIFEST.MF文件的內容。

          l         應用系統的管理

          TPF具備了應用級微核的概念,因此TPF可支持應用系統的管理,其實意思就是可以統一的對通過TPF部署的插件進行管理:

          n         統一的啟動TPF中的所有插件;

          n         統一的停止TPF中的所有插件;

          n         導出TPF中所有的插件的配置。

          這個功能使得只需要在一臺機器上完成了應用系統的部署后,可以通過導出配置來生成TPF啟動時的插件配置文件,這樣在其他機器上再部署時就不需要再通過插件管理端來部署插件了。

          l         遠程應用系統的狀態查詢

          TPF支持查詢遠程部署至TPF的應用系統的運行狀態。

          l         遠程應用系統的管理

          TPF支持管理遠程應用系統的狀態,可停止和啟動遠程的應用系統。

          實現方法

          TPF的最重要的功能是要實現應用級微核,要實現應用級微核,就要讓TPF知道哪些是應用系統的插件,只要知道哪些插件是需要列入TPF管理的就行了,對于這個問題TPF通過在其web管理端安裝插件時將插件的信息寫入至一個tpf.system.plugins文件來實現,通過這樣的方法就可以使得TPF知道哪些插件是要管理的,TPF將記錄這些插件的id、啟動順序、插件位置、插件名稱以及插件的狀態,當再次啟動OSGi應用時,TPF將通過此文件來加載插件,此處要注意,這些插件并不是OSGi框架直接加載的,而是通過TPF來加載的,這樣有助于TPF來控制插件的啟動過程、保持插件原有狀態等。

          在實現了應用級微核概念的基礎上,TPF基于OSGiAPI實現了像插件的安裝、啟動、停止、更新、卸載這些管理功能,基于文件操作的方式實現了對于Manifest.mf的修改。

          在遠程系統的狀態監控和管理上,TPF基于OSGi.org.cnaxis封裝模塊實現了與遠程的OSGi應用通訊從而獲取遠程OSGi應用的狀態并進行管理。

          下載

          暫時還未把TPF歸入開源的project中,感興趣的同學可以先從以下地址下載源碼和可運行版本:

          源碼:

          http://www.bluedavy.com/opendoc/TPF-Source.zip

          可運行版本:

          http://www.bluedavy.com/opendoc/TPF-dist.zip

          等將來把TPF歸入到OSGi.org.cn的開源項目后,大家就可以通過svn來共同發展TPF項目了。

          后續版本

          目前版本的TPF對于大家來說也許主要是webconsole部分的功能,而且更多的也許是,TPF在后續主要需要增強的是插件啟動的控制上的管理、提供系統依賴的圖形化的分析以及遠程TPF應用的圖形化的監控和管理等等。

          另外TPF在代碼級別也還有很多可完善的地方,在實現上也許可以不專門出現一個tpf.system.plugins,而是通過在MANIFEST.MF中擴展出一個屬性來實現應用級微核的概念,還有像將TPF的遠程管理剝離開,以便不需要的話就可以不安裝此插件。

          TPF得到了一定的完善后,將會把它貢獻給OSGi Bundle Repository

          posted on 2007-10-05 19:48 BlueDavy 閱讀(10777) 評論(21)  編輯  收藏 所屬分類: OSGi、SOA、SCA

          評論

          # re: TPF插件管理框架功能、實現以及下載 2007-10-08 15:48 ff

          十分感謝~  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載 2007-10-10 11:39 man

          非常好!!....十分感謝!  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載[未登錄] 2007-10-10 12:39 哈哈

          非常感謝!!!!  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載 2007-10-16 11:33 jerryyu

          請問怎樣在eclipse環境中運行呢?  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載 2007-10-16 14:16 BlueDavy

          @jerryyu
          把source導入eclipse里,然后就直接直接以Run Equinox Framework的方式來運行了。  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載 2007-12-14 18:32 gembin

          什么是微內核概念??  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載[未登錄] 2008-01-11 10:44 jame

          //還有像將TPF的遠程管理剝離開,以便不需要的話就可以不安裝此插件。

          是啊,系統中的axis與我另一Bundle中的axis有時候會產生沖突...

          MSN:jame_q@hotmail.com  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載[未登錄] 2008-01-11 10:49 jame

          如果在linux中跑BundleInstallUtil中pluginUrlk的file:/協議好象有點問題.

          目前我改成file:////才能在Linux與Win同時跑通...  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載 2008-01-13 23:25 BlueDavy

          @jame
          非常感謝你的提醒。  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載[未登錄] 2009-04-12 22:05 Charles

          @BlueDavy
          請問執行后出現 "警告: Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart). Attachment support is disabled." 該如何解決

          管理網頁可以連結, 但是沒有辦法看到安裝的bundle, 是因為上述的警告的關系嗎?  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載 2009-06-12 10:20 Vicky

          HibernateModule是什么,是Hibernate插件么  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載 2009-07-07 10:18 Vicky

          為什么我安裝新插件,能夠上傳到服務器,但是顯示異常:【BUNDLEINSTALL】服務處理錯誤,org.osgi.framework.BundleException: Error converting plugin at C:\Documents and Settings\Administrator\workspace\.metadata\.plugins\org.eclipse.pde.core\New_configuration\org.eclipse.osgi\bundles\26\1\bundlefile. at org.eclipse.core.runtime.internal.adaptor.EclipseStorageHook.generateManifest
          而且在已安裝插件中看不到已經安裝的插件  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載[未登錄] 2009-09-07 13:07 prince

          Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/core/runt
          ime/adaptor/EclipseStarter
          Caused by: java.lang.ClassNotFoundException: org.eclipse.core.runtime.adaptor.Ec
          lipseStarter
          at java.net.URLClassLoader$1.run(Unknown Source)
          at java.security.AccessController.doPrivileged(Native Method)
          at java.net.URLClassLoader.findClass(Unknown Source)
          at java.lang.ClassLoader.loadClass(Unknown Source)
          at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
          at java.lang.ClassLoader.loadClass(Unknown Source)
          at java.lang.ClassLoader.loadClassInternal(Unknown Source)  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載 2009-12-14 11:51 sjrfox

          您好!上面的地址連接不上,能給一個可以下載的地址嗎??謝謝了  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載 2010-02-26 13:34 OSGI

          好東西呀,林老大把地址更新一下吧,現在下不了了。
          或者哪位有的話,能不能發給我一份,謝謝!
          xoiunt@gmail.com  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載 2010-02-26 14:42 BlueDavy

          @OSGI
          ? 地址已更新,應該可以下載的。  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載 2011-03-31 15:33 savagechen11

          怎么訪問這個webconsole呢?  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載[未登錄] 2011-05-26 00:32 飛天

          @BlueDavy
          老大啊!!還是下載不了啊~ 不是說地址更新了

          新的地址是什么呢??

          fasasas@gmail.com  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載 2011-11-18 10:38 santafeng

          您好!代碼寫的很好,設計模式很棒。不過在最新版本eclipse下調試有問題,AbstractController-processAction-ServiceReference[] serviceRefs=bc.getAllServiceReferences(WebCommand.class.getName(), "(command="+action+")");

          serviceRefs 是null的。

          謝謝。  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載[未登錄] 2012-03-24 23:33 lk

          @santafeng
          同上  回復  更多評論   

          # re: TPF插件管理框架功能、實現以及下載 2015-08-23 21:22 shenmin

          下載鏈接失效了,沒法下載啊  回復  更多評論   

          公告

           









          feedsky
          抓蝦
          google reader
          鮮果

          導航

          <2012年3月>
          26272829123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          統計

          隨筆分類

          隨筆檔案

          文章檔案

          Blogger's

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 花垣县| 呼玛县| 余干县| 遂平县| 伊春市| 浦江县| 安溪县| 开封市| 富顺县| 蕉岭县| 钦州市| 叙永县| 永修县| 准格尔旗| 嘉善县| 高尔夫| 渝北区| 兰考县| 莎车县| 稻城县| 睢宁县| 巴青县| 阿拉善盟| 祁阳县| 酒泉市| 长乐市| 自贡市| 博客| 安徽省| 海丰县| 宁南县| 石河子市| 辽宁省| 射阳县| 资兴市| 阳东县| 长泰县| 溧水县| 城市| 白玉县| 讷河市|