TPF插件管理框架功能、實(shí)現(xiàn)以及下載

           

                 OSGi在應(yīng)用時具備了典型的微核系統(tǒng)的特點(diǎn),但對于實(shí)際項(xiàng)目/產(chǎn)品型的應(yīng)用而言,這個微核有些過于底層了,為什么這么說呢?

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

                 在本篇文檔中將介紹TPF提供的功能、TPF實(shí)現(xiàn)的方法以及TPF的下載地址。

          功能

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

          l         插件的安裝

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

          n         手工輸入插件的地址

          可用于實(shí)現(xiàn)位于服務(wù)器上的目錄形式的插件的安裝。

          n         選擇插件文件

          可用于實(shí)現(xiàn)遠(yuǎn)程安裝插件至服務(wù)器或安裝服務(wù)器上的插件,這些插件必須是zipjar格式的。

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

          l         插件的管理

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

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

          l         插件MANIFEST.MF修改的支持

          TPF支持修改插件的MANIFEST.MF文件的內(nèi)容。

          l         應(yīng)用系統(tǒng)的管理

          TPF具備了應(yīng)用級微核的概念,因此TPF可支持應(yīng)用系統(tǒng)的管理,其實(shí)意思就是可以統(tǒng)一的對通過TPF部署的插件進(jìn)行管理:

          n         統(tǒng)一的啟動TPF中的所有插件;

          n         統(tǒng)一的停止TPF中的所有插件;

          n         導(dǎo)出TPF中所有的插件的配置。

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

          l         遠(yuǎn)程應(yīng)用系統(tǒng)的狀態(tài)查詢

          TPF支持查詢遠(yuǎn)程部署至TPF的應(yīng)用系統(tǒng)的運(yùn)行狀態(tài)。

          l         遠(yuǎn)程應(yīng)用系統(tǒng)的管理

          TPF支持管理遠(yuǎn)程應(yīng)用系統(tǒng)的狀態(tài),可停止和啟動遠(yuǎn)程的應(yīng)用系統(tǒng)。

          實(shí)現(xiàn)方法

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

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

          在遠(yuǎn)程系統(tǒng)的狀態(tài)監(jiān)控和管理上,TPF基于OSGi.org.cnaxis封裝模塊實(shí)現(xiàn)了與遠(yuǎn)程的OSGi應(yīng)用通訊從而獲取遠(yuǎn)程OSGi應(yīng)用的狀態(tài)并進(jìn)行管理。

          下載

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

          源碼:

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

          可運(yùn)行版本:

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

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

          后續(xù)版本

          目前版本的TPF對于大家來說也許主要是webconsole部分的功能,而且更多的也許是,TPF在后續(xù)主要需要增強(qiáng)的是插件啟動的控制上的管理、提供系統(tǒng)依賴的圖形化的分析以及遠(yuǎn)程TPF應(yīng)用的圖形化的監(jiān)控和管理等等。

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

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

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

          評論

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2007-10-08 15:48 ff

          十分感謝~  回復(fù)  更多評論   

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2007-10-10 11:39 man

          非常好!!....十分感謝!  回復(fù)  更多評論   

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

          非常感謝!!!!  回復(fù)  更多評論   

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2007-10-16 11:33 jerryyu

          請問怎樣在eclipse環(huán)境中運(yùn)行呢?  回復(fù)  更多評論   

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2007-10-16 14:16 BlueDavy

          @jerryyu
          把source導(dǎo)入eclipse里,然后就直接直接以Run Equinox Framework的方式來運(yùn)行了。  回復(fù)  更多評論   

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2007-12-14 18:32 gembin

          什么是微內(nèi)核概念??  回復(fù)  更多評論   

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

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

          是啊,系統(tǒng)中的axis與我另一Bundle中的axis有時候會產(chǎn)生沖突...

          MSN:jame_q@hotmail.com  回復(fù)  更多評論   

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

          如果在linux中跑BundleInstallUtil中pluginUrlk的file:/協(xié)議好象有點(diǎn)問題.

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

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2008-01-13 23:25 BlueDavy

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

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

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

          管理網(wǎng)頁可以連結(jié), 但是沒有辦法看到安裝的bundle, 是因?yàn)樯鲜龅木娴年P(guān)系嗎?  回復(fù)  更多評論   

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2009-06-12 10:20 Vicky

          HibernateModule是什么,是Hibernate插件么  回復(fù)  更多評論   

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2009-07-07 10:18 Vicky

          為什么我安裝新插件,能夠上傳到服務(wù)器,但是顯示異常:【BUNDLEINSTALL】服務(wù)處理錯誤,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
          而且在已安裝插件中看不到已經(jīng)安裝的插件  回復(fù)  更多評論   

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載[未登錄] 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)  回復(fù)  更多評論   

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2009-12-14 11:51 sjrfox

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

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2010-02-26 13:34 OSGI

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

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2010-02-26 14:42 BlueDavy

          @OSGI
          ? 地址已更新,應(yīng)該可以下載的。  回復(fù)  更多評論   

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2011-03-31 15:33 savagechen11

          怎么訪問這個webconsole呢?  回復(fù)  更多評論   

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

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

          新的地址是什么呢??

          fasasas@gmail.com  回復(fù)  更多評論   

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2011-11-18 10:38 santafeng

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

          serviceRefs 是null的。

          謝謝。  回復(fù)  更多評論   

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

          @santafeng
          同上  回復(fù)  更多評論   

          # re: TPF插件管理框架功能、實(shí)現(xiàn)以及下載 2015-08-23 21:22 shenmin

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

          公告

           









          feedsky
          抓蝦
          google reader
          鮮果

          導(dǎo)航

          <2011年5月>
          24252627282930
          1234567
          891011121314
          15161718192021
          22232425262728
          2930311234

          統(tǒng)計

          隨筆分類

          隨筆檔案

          文章檔案

          Blogger's

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 永济市| 西乌珠穆沁旗| 赤水市| 蛟河市| 于田县| 江山市| 泌阳县| 台山市| 弋阳县| 荆门市| 明水县| 沧州市| 电白县| 周口市| 平阳县| 抚宁县| 雅安市| 铁岭市| 松桃| 德化县| 嘉义市| 六安市| 泸西县| 涿州市| 衡阳县| 仁怀市| 房山区| 淮北市| 甘洛县| 庆阳市| 万荣县| 苏州市| 闵行区| 漳浦县| 闸北区| 阿拉善左旗| 奉化市| 阿克| 东兰县| 中江县| 铁岭县|