亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Java應(yīng)用從集中式步入分布式

系統(tǒng) 1742 0

【IT168 技術(shù)】 記得Martin大叔在《企業(yè)應(yīng)用架構(gòu)模式》中特別強(qiáng)調(diào):“能夠不分布式的應(yīng)用就不要分布式”,這句話沒(méi)什么問(wèn) 題,尤其對(duì)于做過(guò)分布式應(yīng)用的人而言,就更會(huì)有深刻的體會(huì)了,但這個(gè)世界偏偏就沒(méi)有那么簡(jiǎn)單,大多數(shù)人都會(huì)碰到分布式應(yīng)用的場(chǎng)景,尤其是對(duì)于大型應(yīng)用而 言,從集中式步入分布式是不可避免的,只是也許是小型分布式的,也許是大型分布式的;也許是有高性能要求的,也許是沒(méi)有的,在這篇blog中我們來(lái)看看 java應(yīng)用從集中式步入分布式后到底會(huì)帶來(lái)些什么挑戰(zhàn)。

  blog按照應(yīng)用從集中式演變?yōu)榇笮颓腋咝阅艿膽?yīng)用的過(guò)程來(lái)敘述,這也是因?yàn)檫@幾類應(yīng)用對(duì)于設(shè)計(jì)、開發(fā)人員的要求也是從低到高的。

Java應(yīng)用從集中式步入分布式

  Level 1:小型分布式應(yīng)用

   對(duì)于做習(xí)慣了集中式應(yīng)用的同學(xué)而言,當(dāng)碰到小型分布式應(yīng)用場(chǎng)景時(shí),最明顯的問(wèn)題就是如何和遠(yuǎn)程的系統(tǒng)通訊,如何發(fā)消息給遠(yuǎn)程的系統(tǒng),告訴它做什么事情, 并且得到事情處理的結(jié)果,對(duì)于java開發(fā)人員而言,更習(xí)慣的考慮方式也許是如何去調(diào)用遠(yuǎn)程系統(tǒng)提供的接口,在集中式的應(yīng)用中可以采用A a=new AImpl();這樣的方式調(diào)用,但遠(yuǎn)程就沒(méi)辦法這么調(diào)用了。

  在小型分布式應(yīng)用中,最需要解決的就是上面所說(shuō)的遠(yuǎn)程系統(tǒng)通訊以及遠(yuǎn)程系統(tǒng)調(diào)用的問(wèn)題了,為此就得學(xué)習(xí)相關(guān)的知識(shí)體系。

   對(duì)于遠(yuǎn)程系統(tǒng)通訊而言,至少應(yīng)該知道下TCP/IP、UDP/IP是個(gè)大概什么樣的概念,BIO/NIO是什么概念,另外就是需要知道下基于java如 何去實(shí)現(xiàn)tcp/ip+BIO(NIO)、udp/ip+BIO(NIO)的通訊,相應(yīng)的會(huì)需要了解下Java序列化、 服務(wù)器 端采用線程池方式處理等知識(shí),在掌握了這些知識(shí)后,基本上做一個(gè)小型的java遠(yuǎn)程通訊的應(yīng)用不會(huì)有什么太大的問(wèn)題。

   對(duì)于通過(guò)遠(yuǎn)程系統(tǒng)調(diào)用就可實(shí)現(xiàn)的小型分布式應(yīng)用而言,也許更為簡(jiǎn)單,可以只掌握怎么用spring-remoting、axis或hessian這類的 框架就可以了,直接就可實(shí)現(xiàn),當(dāng)然,如果能了解下rmi、webservice是什么機(jī)制就更好了,另外,畢竟遠(yuǎn)程調(diào)用很難做到完全和本地調(diào)用一樣,盡管 所有的遠(yuǎn)程調(diào)用框架都想做到完全透明,但遠(yuǎn)程調(diào)用時(shí)僅僅異常就比本地調(diào)用會(huì)多出好幾種來(lái),例如 網(wǎng)絡(luò) 異常、超時(shí)異常等,因此在調(diào)用遠(yuǎn)程系統(tǒng)時(shí),需要明確的了解這些異常的區(qū)分,當(dāng)然,或者可以認(rèn)為都是同樣的遠(yuǎn)程業(yè)務(wù)異常,但在追查錯(cuò)誤時(shí),則需要明確區(qū)分。

  從上面這些知識(shí)點(diǎn)可以看出,應(yīng)用即使是從集中式應(yīng)用步入小型分布式應(yīng)用,無(wú)論是對(duì)于開發(fā)、部署還是測(cè)試而言,都復(fù)雜了很多。

  Level 2:高性能分布式應(yīng)用

  對(duì)于高性能分布式應(yīng)用而言,要求就高很多了,因?yàn)橐龅礁咝阅埽瑑H了解怎么用是不夠的,通訊和調(diào)用方面的技術(shù)都需要了解到底層的具體機(jī)制和實(shí)現(xiàn)。

   對(duì)于遠(yuǎn)程通訊方式的分布式應(yīng)用而言,需要了解BIO/NIO具體有什么不同,具體機(jī)制是怎么樣的,以及使用或參考目前主流的通訊框架,像mina、 grizzly等,看看它們?cè)谧鯪IO實(shí)現(xiàn)時(shí)有什么高超的技巧,除了了解這些外,還需要掌握線程池應(yīng)如何配置;長(zhǎng)連、短連什么概念,如何實(shí)現(xiàn);連接怎么管 理;序列化如何優(yōu)化等等。

  對(duì)于遠(yuǎn)程調(diào)用的分布式應(yīng)用而言,則在上面的基礎(chǔ)上,還需要了解rmi、webservice等的實(shí)現(xiàn)機(jī)制是怎 么樣的,另外就是spring-remoting、hessian、axis的實(shí)現(xiàn)機(jī)制是怎么樣的,有什么可改進(jìn)的地方,在明確了可改進(jìn)的地方后需要自己 選擇相應(yīng)的方案去實(shí)現(xiàn)。

  從上面這些知識(shí)點(diǎn)可以看出,要寫出高性能的分布式應(yīng)用真的不是蓋的,確實(shí)挺困難的。

  Level 3:大型高性能分布式應(yīng)用

  對(duì)于大型高性能分布式應(yīng)用而言,難度就較之之前兩個(gè)level更大很多,它面臨的問(wèn)題非常的多:

  1、穩(wěn)定性的問(wèn)題

  對(duì)于大型分布式應(yīng)用而言,保持穩(wěn)定是其重點(diǎn),要做到穩(wěn)定,就必須對(duì)整個(gè)應(yīng)用的通訊過(guò)程的實(shí)現(xiàn)技術(shù)有全面的了解,以能夠做到在使用時(shí)盡量的正確,另外就是當(dāng)出現(xiàn)問(wèn)題時(shí)能夠盡快的查明原因。

  2、統(tǒng)一、標(biāo)準(zhǔn)通訊的問(wèn)題

  大型分布式應(yīng)用必然會(huì)涉及到很多種不同的應(yīng)用,應(yīng)該能夠做到對(duì)于任何的應(yīng)用都采用同樣的方式進(jìn)行通訊或調(diào)用,這樣才能確保使用的簡(jiǎn)單。

  3、分布式事務(wù)的問(wèn)題

  當(dāng)應(yīng)用變成大型分布式應(yīng)用后,分布式事務(wù)的問(wèn)題會(huì)不可避免的出現(xiàn),而且這個(gè)時(shí)候還要求做到高性能,因此通常是不能用傳統(tǒng)的數(shù)據(jù)庫(kù)事務(wù)來(lái)實(shí)現(xiàn)的,目前對(duì)于大型應(yīng)用的分布式事務(wù)而言,流行的有BASE和CAP策略,和傳統(tǒng)的ACID策略不同。

  4、如何管理這些應(yīng)用的問(wèn)題

  大型分布式應(yīng)用,意味著應(yīng)用非常的多,在這樣的場(chǎng)景下,怎么樣管理好這么多的應(yīng)用呢,例如這些應(yīng)用之間的依賴關(guān)系是怎么樣的,應(yīng)用運(yùn)行期的狀況是怎么樣的等等。

  還有很多各種各樣的問(wèn)題,因此,我們更要說(shuō),要做個(gè)能支撐大型高性能的分布式應(yīng)用真的非常非常的不容易,對(duì)于實(shí)現(xiàn)大型分布式應(yīng)用而言,目前SOA是個(gè)可參考的思想,但其具體如何實(shí)現(xiàn)就需要各位架構(gòu)師根據(jù)情況來(lái)做出具體的選擇了。

  從以上簡(jiǎn)單的描述來(lái)看,可以看出,分布式應(yīng)用比集中式應(yīng)用真的難很多,至少它是在原有的集中式應(yīng)用的基礎(chǔ)上增加了更多的挑戰(zhàn)和對(duì)于知識(shí)體系的更高的要求,當(dāng)然,對(duì)于大型應(yīng)用而言,它帶來(lái)的好處也是非常明顯的,因此就讓我們痛并快樂(lè)著吧。

Java應(yīng)用從集中式步入分布式


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 天堂网一区 | 日本 毛片基地-亚洲 | 国产福利在线视频 | 久久久免费网站 | 99久久精品久久久久久清纯 | 国产精品视频免费在线观看 | 欧美人与鲁交大毛片免费 | 久青草免费在线视频 | 国产亚洲欧美一区 | 国产精品网站 夜色 | 99精品热 | 亚洲人人精品 | 男人边吃奶边爱边做视频日韩 | 国产精品 视频一区 二区三区 | 99秒拍福利大尺度视频 | 国产人伦视频在线观看 | 国产成人亚洲欧美激情 | 亚州精品视频 | 一区二区在线免费观看 | 六月婷婷久香在线视频 | 国产精品欧美在线观看 | 五月四房婷婷 | 日本一级毛片片免费观看 | 视频国产精品 | 国产精品偷伦视频免费观看的 | 亚洲国产美女精品久久久久 | 在线欧美v日韩v国产精品v | 亚洲最大成人综合网 | 亚洲第一中文字幕 | 一区二区三区四区视频在线观看 | 福利午夜国产网站在线不卡 | 91在线你懂的 | 爱爱夜夜爽成人夜夜爽 | 精品96在线观看影院 | 五月婷婷激情六月 | 一级a做爰片欧欧美毛片4 | 男女一级毛片 | 亚洲高清免费 | 中文字幕亚洲欧美一区 | 日韩精品午夜视频一区二区三区 | 日本一区二区三区在线播放 |