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

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

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

    posts - 495,  comments - 11,  trackbacks - 0

    ??? XFire、Axis

    ??? XFire、Axis是Webservice的實現框架,WebService可算是一個完整的SOA架構實現標準了,因此采用XFire、Axis這些也就意味著是采用webservice方式了。

      1、是基于什么協議實現的?

      基于SOAP協議。

      2、怎么發起請求?

      獲取到遠端service的proxy后直接調用。

      3、怎么將請求轉化為符合協議的格式的?

      將請求信息轉化為遵循SOAP協議的XML格式,由框架轉化為流進行傳輸。

      4、使用什么傳輸協議傳輸?

      Http協議。

      5、響應端基于什么機制來接收請求?

      監聽Http請求。

      6、怎么將流還原為傳輸格式的?

      根據SOAP協議進行還原。

      7、處理完畢后怎么回應?

      返回結果寫入XML中,由框架返回至調用端。

      ------------------------------------------------------------------------------------------------------------------------------

      ActiveMQ

      ActiveMQ是JMS的實現,基于JMS這類消息機制實現遠程通訊是一種不錯的選擇,畢竟消息機制本身的功能使得基于它可以很容易的去實現同步/異步/單向調用等,而且消息機制從容錯角度上來說也是個不錯的選擇,這是Erlang能夠做到容錯的重要基礎

      1、是基于什么協議實現的?

      基于JMS協議。

      2、怎么發起請求?

      遵循JMS API發起請求。

      3、怎么將請求轉化為符合協議的格式的?

      不太清楚,猜想應該是二進制流。

      4、使用什么傳輸協議傳輸?

      支持多種傳輸協議,例如tcp/ip、udp、http等等。

      5、響應端基于什么機制來接收請求?

      監聽符合協議的端口。

      6、怎么將流還原為傳輸格式的?

      同問題3。

      7、處理完畢后怎么回應?

      遵循JMS API生成消息,并寫入JMS Queue中。

      基于JMS此類機制實現遠程通訊的例子有Spring-Intergration、Mule、Lingo等等。

     -----------------------------------------------------------------------------------------------------------------------------

    ??? Mina

    ??? Mina是Apache提供的通訊框架,在之前一直沒有提到網絡IO這塊,之前提及的框架或library基本都是基于BIO的,而Mina是采用NIO的,NIO在并發量增長時對比BIO而言會有明顯的性能提升,而java性能的提升,與其NIO這塊與OS的緊密結合是有不小的關系的。

    ??? 1、是基于什么協議實現的?

    ??? 可選的傳輸協議+NIO.

    ??? 2、怎么發起請求?

    ??? 通過Mina提供的Client API.

    ??? 3、怎么將請求轉化為符合協議的格式的?

    ??? Mina遵循java串行化機制對請求對象進行序列化。

    ??? 4、使用什么傳輸協議傳輸?

    ??? 支持多種傳輸協議,例如tcp/ip、http等等。

    ??? 5、響應端基于什么機制來接收請求?

    ??? 以NIO的方式監聽協議端口。

    ??? 6、怎么將流還原為傳輸格式的?

    ??? 遵循java串行化機制對請求對象進行反序列化。

    ??? 7、處理完畢后怎么回應?

    ??? 遵循Mina API進行返回。

    ??? MINA是NIO方式的,因此支持異步調用是毫無懸念的。

     --------------------------------------------------------------------------------------------------------------------------------

    ??? EJB

    ??? EJB最突出的在于其分布式,EJB采用的是ORMI協議,和RMI協議是差不多的,但EJB在分布式通訊的安全控制、transport pool、smart proxy等方面的突出使得其在分布式領域是不可忽視的力量。

    ??? 1、是基于什么協議實現的?

    ??? 基于ORMI協議。

    ??? 2、怎么發起請求?

    ??? EJB調用。

    ??? 3、怎么將請求轉化為符合協議的格式的?

    ??? 遵循java串行化機制對請求對象進行序列化。

    ??? 4、使用什么傳輸協議傳輸?

    ??? tcp/ip.

    ??? 5、響應端基于什么機制來接收請求?

    ??? 監聽協議端口。

    ??? 6、怎么將流還原為傳輸格式的?

    ??? 遵循java串行化機制對請求對象進行反序列化。

    ??? 7、處理完畢后怎么回應?

    ??? 直接返回處理對象即可。

    ??? 在之前的分布式服務框架系列的文章中對于jndi有誤導的嫌疑,在這篇blog中也順帶的提下jndi的機制,由于JNDI取決于具體的實現,在這里只能是講解下jboss的jndi的實現了。

    ??? 在將對象實例綁定到jboss jnp server后,當遠程端采用context.lookup()方式獲取遠程對象實例并開始調用時,jboss jndi的實現方法是從jnp server上獲取對象實例,將其序列化回本地,然后在本地進行反序列化,之后在本地進行類調用。

    ??? 通過這個機制,就可以知道了,本地其實是必須有綁定到jboss上的對象實例的class的,否則反序列化的時候肯定就失敗了,而遠程通訊需要做到的是在遠程執行某動作,并獲取到相應的結果,可見純粹基于JNDI是無法實現遠程通訊的。

    ??? 但JNDI也是實現分布式服務框架一個很關鍵的技術點,因為可以通過它來實現透明化的遠端和本地調用,就像ejb,另外它也是個很好的隱藏實際部署機制(就像datasource)等的方案。

    ??? 總結

    ??? 由上一系列的分析可知,在遠程通訊領域中,涉及的知識點還是相當的多的,例如有:通信協議或遠程調用協議(tcp/http/udp/rmi/xml-rpc etc.)、消息機制、網絡IO(BIO/NIO/AIO)、MultiThread、本地調用與遠程調用的透明化方案(涉及java classloader、Dynamic Proxy、Unit Test etc.)、異步與同步調用、網絡通信處理機制(自動重連、廣播、異常、池處理等等)、Java Serialization (各種協議的私有序列化機制等)、各種框架的實現原理(傳輸格式、如何將傳輸格式轉化為流的、如何將請求信息轉化為傳輸格式的、如何接收流的、如何將流還原為傳輸格式的等等),要精通其中的哪些東西,得根據實際需求來決定了,只有在了解了原理的情況下才能很容易的做出選擇,甚至可以根據需求做私有的遠程通訊協議,對于從事分布式服務平臺或開發較大型的分布式應用的人而言,我覺得至少上面提及的知識點是需要比較了解的。

    posted on 2009-08-15 15:10 jadmin 閱讀(239) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    主站蜘蛛池模板: 亚洲黄色网站视频| 操美女视频免费网站| 成人妇女免费播放久久久| 野花高清在线电影观看免费视频 | 一级毛片大全免费播放| 99在线观看免费视频| 久久久久一级精品亚洲国产成人综合AV区 | 黄色毛片免费网站| 好大好深好猛好爽视频免费| 亚洲国产综合在线| 免费A级毛片无码视频| 亚洲国产精品成人久久 | 国产免费黄色无码视频| 国产精品麻豆免费版| 色www免费视频| 亚洲av最新在线网址| 99re6在线精品视频免费播放| 亚洲精品影院久久久久久| 国产成人无码免费看视频软件| 亚洲最大无码中文字幕| 亚洲AV无码乱码在线观看| 99精品视频免费| 亚洲成a人片在线观看中文app | 亚洲高清毛片一区二区| 亚洲国产精品毛片av不卡在线| APP在线免费观看视频| 亚洲综合在线成人一区| 妞干网免费观看视频| 国产成人无码免费看片软件| 亚洲五月激情综合图片区| 最新中文字幕电影免费观看| 永久免费无码日韩视频| 亚洲日本在线看片| 色吊丝最新永久免费观看网站| 久久av免费天堂小草播放| 亚洲成a人片在线观| 亚洲va中文字幕无码| 免费无码VA一区二区三区| 亚洲精品无码专区在线| 亚洲精品国产精品国自产观看| 无码精品一区二区三区免费视频 |