<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 閱讀(10383) 評論(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

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 特级毛片aaaa级毛片免费| 久久久国产亚洲精品| 一级特黄特色的免费大片视频| 手机在线看永久av片免费| 午夜免费福利片观看| 免费理论片51人人看电影| 国产99在线|亚洲| 免费在线黄色电影| 成人毛片18岁女人毛片免费看| 亚洲av无码天堂一区二区三区| 色欲aⅴ亚洲情无码AV蜜桃| 无码午夜成人1000部免费视频| 亚洲成AV人片在线观看| 免费成人在线视频观看| 亚洲黄色高清视频| 免费A级毛片无码A∨| 久久精品国产亚洲Aⅴ香蕉| 亚洲免费在线视频观看| 无人在线观看免费高清视频| 亚洲国产综合精品中文第一| 成人a免费α片在线视频网站| 亚洲av无码精品网站| 欧亚一级毛片免费看| 国产亚洲精久久久久久无码| 久久午夜夜伦鲁鲁片免费无码| 亚洲白嫩在线观看| 在线观看免费为成年视频| 九九全国免费视频| 久久亚洲精精品中文字幕| 国产午夜无码精品免费看动漫| 亚洲一级二级三级不卡| 最近最好的中文字幕2019免费| 小说区亚洲自拍另类| 亚洲国产一成人久久精品| 可以免费看黄视频的网站| 亚洲美女视频免费| 免费观看大片毛片| 中文字幕无码免费久久9一区9| 在线观看亚洲免费| 99re6在线视频精品免费| 亚洲一本之道高清乱码|