<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    基于OSGi實現分布式服務框架歷程(一)

    寫完之前的那篇基于OSGi實現服務框架的分析后,決定動手來實現一個基于OSGi的分布式服務框架,而其feature呢,就會遵照之前寫的服務框架的要素來實現,根據之前的分析,將這個實現過程分為了三個大的步驟來完成:Spike階段、實現階段和測試階段,Spike階段用于完成幾個關鍵問題的技術的研究和選型;實現階段用于完成基于OSGi的分布式服務框架;測試階段用于判斷實現的分布式框架對于應用場景的符合程度、性能的情況。
    首先進入Spike階段,在Spike階段需要完成服務注冊、創建以及服務的proxy管理的技術研究和選型,這主要是因為我對這兩部分的技術并不怎么熟悉,對于服務的注冊和查找,可選的技術有兩種:JNDI和JINI;對于服務的proxy的管理,可選的技術應該就是cglib這一種了,不過需要研究具體怎么用,在這篇blog中將介紹對于JNDI的Spike。
    對于服務的注冊和查找,首先想到的可用的技術莫過于JNDI了,JNDI作為java ee中重要的命名和查找的機制,和服務的注冊、查找是非常吻合的,在做服務的注冊和查找的技術的Spike時,主要從這么幾方面去Spike:
    1、怎么實現遠程的將服務注冊到服務中心?
          這個對于JNDI來講,非常簡單,在初始化jndi的context后,就可以通過context.bind或context.rebind來實現了。
          對于服務的遠程注冊來講,在實現時是不注冊服務的instance到服務中心的,只是注冊服務的相關信息的對象。
    2、在服務應用端怎么查找服務中心的服務?
          這個對于JNDI來講,也很簡單,通過context.lookup就可實現了。
          對于服務的遠程引用和查找來講,在實現時需要將context.lookup這種方式和DS方式融合。
    3、有否現成可用的實現?
          有JBoss的JNP,從各類評價來說,還是不錯的。
    4、是否支持Cluster?
          JNP是支持Cluster。
    5、可參考的資源有哪些?
          主要參考的資源有這兩個網頁:
          http://hankun.blogbus.com/logs/1774694.html
          http://blog.csdn.net/cjp472/archive/2003/10/28/17570.aspx
          關于JNDI cluster方面的資料:
          http://www.wangchao.net.cn/bbsdetail_30257.html
    從上面幾個方面來看,JNDI基本是滿足服務的注冊和查找的需求的,當然,在實現的時候還得做一定的改造,不過總體來說,還是不錯的,等Spike完JINI后再來做出選擇,為什么會想到JINI呢,就是因為著名的Newton項目了,Newton項目是基于OSGi+Jini實現的SCA框架,所以是值得參考的,欲知后事如何,請看下篇分解,:)。

    >> 基于OSGi實現分布式服務框架歷程(二)
    >> 基于OSGi實現分布式服務框架歷程(三)

    posted on 2008-01-14 01:13 BlueDavy 閱讀(10384) 評論(8)  編輯  收藏 所屬分類: OSGi、SOA、SCA

    評論

    # re: 基于OSGi實現分布式服務框架歷程(一) 2008-01-14 15:51 岑文初

    看了三篇文章,也受益不少:),不過對于OSGI和SCA以及服務框架有自己一點想法,這兒寫不下:),回blog寫。不過以后有了你和我交流和學習,對將來完善動態載入的服務框架更加有信心了^_^  回復  更多評論   

    # re: 基于OSGi實現分布式服務框架歷程(一)[未登錄] 2008-01-17 16:44 Young

    我也在考慮如何將osgi引用到B/S結構的應用開發中來。我的想法是將osgi作為一個ejb應用放在應用服務器的ejb容器中運行,對外部的服務使用spring暴露為session ejb,共web容器中的應用或遠程客戶端使用。

    這樣的好處是既發揮了osgi搭建后臺系統的優勢,又不必強迫web應用的開發者學習osgi,他們可以繼續發揮現有的web應用開發技能。

    大俠意下如何?給點意見吧 :)  回復  更多評論   

    # re: 基于OSGi實現分布式服務框架歷程(一) 2008-01-17 22:36 BlueDavy

    @Young
    那么外部訪問OSGi的服務到底是個怎么訪問法呢?
    通過那個暴露為ejb的OSGi的服務來路由訪問其他的OSGi服務?  回復  更多評論   

    # re: 基于OSGi實現分布式服務框架歷程(一)[未登錄] 2008-01-18 15:18 Young

    簡單說是這個思路。
    具體說,一種想法是將ejb在語義上定義為數據訪問接口。因為后臺服務提供的大部分是數據訪問類的服務(或同質的服務,比如流程的訪問和提交),所以可以通過數據類型和有限的操作(比如增刪改查),窮舉全部的數據訪問服務。

    第二種想法是ejb提供類似osgi的服務查找功能,外部可以查找和使用特定的服務。但這樣就同樣需要處理服務類引用,聲明周期管理等在osgi內部使用服務時碰到的問題,但總的來說,估計不是很難解決。  回復  更多評論   

    # re: 基于OSGi實現分布式服務框架歷程(一)[未登錄] 2008-01-18 17:08 BlueDavy

    @Young
    按照你說的這種,我覺得沒什么問題,因為你的業務層等其實是集中部署的對吧,那和傳統的做法其實就不用有什么差別了,做個Facade的OSGi服務就OK了。  回復  更多評論   

    # re: 基于OSGi實現分布式服務框架歷程(一)[未登錄] 2008-01-22 10:33 Young

    @BlueDavy
    多謝指點。你說了我才意識到通過部署到ejb容器中還提供了集中式服務的功能。  回復  更多評論   

    # re: 基于OSGi實現分布式服務框架歷程(一) 2008-01-22 11:26 BlueDavy

    @Young
    :),是的,ejb容器本身其實就是個服務中心,在加上cluster的話它也是個非常好的分布式服務中心。
    只是在某些需求方面還需要修改才能達到真正的分布式服務框架的需求,例如服務的綁定不采用綁定服務實例的方法,本地服務和遠程服務的透明調用等。
      回復  更多評論   

    # wsdl+bpel+ode的整合 2010-12-17 18:03 小朱


    我想利用 felix 實現的osgi 最后生成bundle的wsdl文件 ,加上bpel文件(也就是工作流) 通過ode 生成cbp文件, 希望大家提供思路  回復  更多評論   

    公告

     









    feedsky
    抓蝦
    google reader
    鮮果

    導航

    <2008年1月>
    303112345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    統計

    隨筆分類

    隨筆檔案

    文章檔案

    Blogger's

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国产免费一级高清淫曰本片| 深夜特黄a级毛片免费播放| 伊人免费在线观看高清版| 亚洲AV日韩精品一区二区三区| 国产尤物在线视精品在亚洲| 免费无码看av的网站| 亚洲av无码av在线播放| 麻豆国产人免费人成免费视频 | 91在线亚洲综合在线| 在线精品一卡乱码免费| 亚洲av一本岛在线播放| 最近最新的免费中文字幕| 国产精品亚洲AV三区| 亚洲AV中文无码乱人伦| 一级做a爰片久久毛片免费陪| 国产中文在线亚洲精品官网| 91视频免费观看高清观看完整| 亚洲欭美日韩颜射在线二| 国产无遮挡裸体免费视频在线观看| 亚洲国产成人片在线观看无码| 午夜免费福利视频| 亚洲一区二区三区免费观看 | 免费无遮挡无码视频在线观看| 亚洲欧洲精品成人久久奇米网| 国产免费MV大全视频网站| 亚洲人成在线影院| 成人特黄a级毛片免费视频| 国产亚洲蜜芽精品久久| 久久夜色精品国产亚洲| 四虎免费影院ww4164h| 亚洲国产精品久久久久秋霞小 | 亚洲AV无码成人专区片在线观看 | 黄网站免费在线观看| 亚洲一区动漫卡通在线播放| 国产高清视频在线免费观看| 窝窝影视午夜看片免费| 亚洲a在线视频视频| 日本不卡视频免费| 国产麻豆成人传媒免费观看| 亚洲最大天堂无码精品区| 亚洲国产日韩成人综合天堂|