分析JBoss Remoting

          Java領域中的分布式框架比較的多,分析一個已有的遠程調用框架無論是對于打算采用已有成果還是自己做分布式框架,都是很必要的事情,JBoss Remoting是其中很好很強大的一個框架,在此來對JBoss Remoting進行深入的分析,看看JBoss Remoting是如何基于java.net提供的包去解決這些問題的,本文所分析的JBoss Remoting源碼的版本為2.2.2_SP2,本來以為會是篇不怎么長的文檔,沒想到還沒寫的詳細和深入的時候就已經有三十多頁了,也不好在這里直接貼出來,就把文檔目錄和最后的總結部分貼在這了,感興趣的同學們可以從這個地址下載PDF版本的文檔:http://www.riawork.org/opendoc/JBoss.Remoting.Opendoc.pdf
          目錄:
          1 分布式應用概述
          2 分析JBoss Remoting
             2.1 Socket方式遠程調用
             2.2 多種調用方式的支持
             2.3 遠程加載class的支持
             2.4 高并發下的穩定性
             2.5 異常處理
             2.6 提高性能
             2.7 集群的支持
          3 學到了什么
          4 總結

          總結

          從對JBoss Remoting的分析中,分布式應用帶來的需要深入學習的知識體系較之集中式的應用多了很多,最基礎也最明顯的涉及到的知識體系有:網絡通訊(涉及到的有協議、網絡I/O等)、java網絡編程(java.net包、NIO等)、序列化機制、并發編程、池技術等,就這些知識點每個拓展開來講都可以講成大篇甚至一本書的范疇,對于大型分布式應用而言,涉及的知識體系就更多了,例如還需要掌握cluster環境下的處理(很多東西到了集群環境下復雜程度絕對是需要以翻倍來計算的,而且很多現在的處理方式都會變得不可用)、load balance策略等,本文也只是對JBoss Remoting的一些基本以及關鍵的特點進行了分析(最開始的時候打算叫深入分析JBoss Remoting的,不過寫到最后發現其實還有很多細節和深入的部分并沒有寫,因此還是改名叫分析JBoss Remoting了),其中其實還有很多細節是值得研究和學習的,希望有研究的同仁們貢獻出其他方面的研究或指出本文錯誤的地方,非常感謝。

          大型的分布式應用中不可能要求每個開發人員都去掌握這些知識體系,因此對于大型分布式應用而言,提供一個分布式的框架是非常有必要的,做到將分布式應用涉及的相關知識點盡量的剝離,就像Erlang,做到將并發的基礎知識分離。

          JBoss Remoting解決了很多分布式應用所需面對的問題,是目前可選的開源分布式框架中一個很不錯的選擇,并且其在保證高并發場景下的穩定性和性能提升上也做了很多的工作,但還是有很多可提升的空間,例如統一的遠程調用的API上(還可以進一步加強透明化的oneway、異步的調用)、NIO的支持、異步調用的提升(或者可以考慮提供結合MQ實現的異步調用)等等,而如果要成為大型分布式應用的支撐平臺,無論是性能上還是功能上,JBoss Remoting還有不少需要改進和提升的地方。

          分布式應用較之集中式應用在對象的接口的設計和使用上也有了更高的要求,例如不要出現依靠參數引用傳遞來隱性的填充一些值、遠程對象應是線程安全的、盡量不要出現頻繁調用遠程對象的現象、盡量減少往返傳輸大對象的現象等等細節。

          分布式應用對比集中式應用而言,無論是開發還是支撐框架上都復雜了很多,因此盡管分布式應用相對集中式應用而言,能夠帶來機器配置要求降低、系統結構更加清晰和松耦合、降低維護的復雜度等等優點,但還是應該做到能不分布式就盡量不要分布式。

          posted on 2008-05-04 21:54 BlueDavy 閱讀(5799) 評論(11)  編輯  收藏 所屬分類: OSGi、SOA、SCA

          評論

          # re: 分析JBoss Remoting 2008-05-04 22:47 江南白衣

          發現你和文殊寫的技術文檔都好長啊,而且寫的條理清晰,文字易讀,8歲到80歲都看得懂啊。而且感覺你們上班好幸福。

          嘿嘿,基于和你差不多的原因,去年初也關注過這個JBoss Remoting,不過后來轉項目就沒再管了。感覺這個項目有點獨哦,用它和用ICE之類的差不多。不過Java當年EJB太強勢了,打倒之后真沒有一個好的cluster環境下的代用品,郁悶。  回復  更多評論   

          # re: 分析JBoss Remoting 2008-05-04 23:26 BlueDavy

          @江南白衣
          ...白衣同學,俺的文筆比你可是差了N遠了...
          ^_^,不如考慮來我們這?
          是滴,JBoss Remoting是個可以獨立使用的項目,也是JBoss AS系列中非常關鍵的東西了,嗯,cluster環境下的東西要找到一個基本不太可能了,商業可得靠這個賺money的嘛。
            回復  更多評論   

          # re: 分析JBoss Remoting[未登錄] 2008-05-05 09:32 agile

          研究代碼的過程也是自身提高的過程,向你學習!  回復  更多評論   

          # re: 分析JBoss Remoting 2008-05-05 09:41 BeanSoft

          Spring 也終于開始回歸 Java EE 大家庭了,不再叛逆了。。。畢竟,它只是個不完整的實現。不得不說 EJB 之類的技術,還是相當的核心,一如用圖形算法作出3D Game。  回復  更多評論   

          # re: 分析JBoss Remoting 2008-05-05 11:22 dennis

          @BeanSoft
          spring回歸了嗎?spring越走越遠了吧  回復  更多評論   

          # re: 分析JBoss Remoting 2008-05-05 13:23 BeanSoft

          只做個微容器怎么掙錢啊?現在一賣都是解決方案,打包,一大堆產品,安裝包幾百兆,看看SpringSource公司推出的產品線(不要看Spring主頁,那只是開源了一部分)就明白了。另:SprnigSource 已加入 JCP,協商制定 Java EE 6規范。  回復  更多評論   

          # re: 分析JBoss Remoting 2008-05-23 09:40 rason

          我想用JBOSS Remoting替換現在的RMI,主要是在OSGI中,用RMI太麻煩。
          問題也比較多。
          不知是否可行,試試先。  回復  更多評論   

          # re: 分析JBoss Remoting 2008-07-06 15:17 Java.net

          能否講講JBoss Remoting實際中的應用?比如如何與JBoss、Tomcat一起使用?  回復  更多評論   

          # re: 分析JBoss Remoting 2009-06-10 09:18 Maven

          你這最后一句的無論。。因此。。但。。
          實在是經典的誘惑啊  回復  更多評論   

          # re: 分析JBoss Remoting 2010-07-27 15:00 雷博弈

          BlueDavy 你好! 我能否有Jboss-Remoting來監控JBOSS服務器上數據庫的連接?具體怎么實現?如果用時間,請指點一下。我的郵箱是:leiguomin627@126.com 十分感謝。
            回復  更多評論   

          # re: 分析JBoss Remoting 2015-03-11 11:17 grucee

          你好,文章中貼出來的pdf不能下載,能否給我發一份,546401099@qq.com 謝謝了  回復  更多評論   

          公告

           









          feedsky
          抓蝦
          google reader
          鮮果

          導航

          <2008年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          統計

          隨筆分類

          隨筆檔案

          文章檔案

          Blogger's

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 达拉特旗| 台安县| 喀喇沁旗| 江口县| 克什克腾旗| 嘉善县| 敦化市| 泌阳县| 海丰县| 柳河县| 三门峡市| 应用必备| 谷城县| 深州市| 襄樊市| 潍坊市| 福鼎市| 惠来县| 平凉市| 河曲县| 嘉定区| 郸城县| 慈利县| 临湘市| 原阳县| 思南县| 繁昌县| 车险| 屏山县| 咸宁市| 江西省| 汉源县| 沙河市| 洞口县| 新营市| 仙游县| 白玉县| 宝丰县| 浠水县| 郯城县| 来凤县|