來源:北大青鳥飛迅校區(qū)|發(fā)布時(shí)間:2013-05-04 11:26:52
這篇文章我們來簡單的了解一下在.NET平臺(tái)上有一個(gè)強(qiáng)有力的遠(yuǎn)程調(diào)用武器,也是上一篇文章中我一筆帶過的遠(yuǎn)程英雄.NetRemoting。
其實(shí)在.NET平臺(tái)里面到處都能看見Remoting的影子,只不過我們平時(shí)都很少有機(jī)會(huì)與它接觸,因?yàn)樗ǔ9ぷ饔?ldquo;后端”,躲在界面顯示技術(shù)(如:WinformAsp.netWpf.)
界面顯示層是將信息以友好的方式展現(xiàn)在用戶面前,但是真正的英雄通常都在背后默默的支持它,以更華麗的效果展現(xiàn)。(如:ThreadWebServiceRemotingWcf...)。
其實(shí)在我們不斷學(xué)習(xí)的過程中會(huì)慢慢的在我們腦海里浮現(xiàn)出我們所學(xué)習(xí)的東西的模型,比如我們是專研.NET這門技術(shù),那么在我們腦子里是否已經(jīng)有了一個(gè)簡單而模糊的陰影,能看見這種陰影才證明我們剛剛?cè)腴T。如果未曾有這種感覺,那么我們對(duì)他還是一無所知,所謂知己知彼方能百戰(zhàn)百勝,說明我們還未入門。因?yàn)榫ǘ际菑哪:_始的,沒有人一躍而過。(這只是本人對(duì)學(xué)習(xí)過程中的一點(diǎn)小小的感悟)
那么.NetRemoting是何許人也,它是什么?一般在哪里才能看見它?這篇文章就是來介紹這位大人物的。[王清培版權(quán)所有,轉(zhuǎn)載請(qǐng)給出署名]
定義:.NetRemoting是.NET平臺(tái)里面一個(gè)專門用來處理遠(yuǎn)程調(diào)用的框架,是已經(jīng)為我們做好的、現(xiàn)成的框架,我們可以利用他來進(jìn)行遠(yuǎn)程調(diào)用。
上面是我對(duì)他的一個(gè)簡單的定義吧。上篇文章我簡單的介紹了什么是遠(yuǎn)程調(diào)用,在.NET里面只要是跨AppDomain(應(yīng)用程序域)的都屬于遠(yuǎn)程調(diào)用,因?yàn)?NET在我們物理宿主進(jìn)程里面又抽象了一個(gè)他自有的邏輯宿主。在操作系統(tǒng)看來,AppDomain是不存在的,但是在CLR看來它是存在的,我們的程序要想跑起來必須進(jìn)過CLR的一系列的邏輯部署,也就是構(gòu)造這么一個(gè)邏輯空間。[詳情請(qǐng)看本人的“.NET簡談組件程序設(shè)計(jì)之(AppDomain應(yīng)用程序域) ”一文
.NetRemoting基本結(jié)構(gòu)
那么既然是框架它就肯定有一個(gè)結(jié)構(gòu),也就是他的工作原理。
在Remoting沒有出來之前,如果不進(jìn)過一番復(fù)雜的編寫,我想夸AppDomain調(diào)用可能只局限于統(tǒng)一進(jìn)程內(nèi)了。(這句話可能會(huì)引起誤會(huì),我是說在.NET現(xiàn)有的框架基礎(chǔ)上而言。)
然而有了Remoting之后,一切變的簡單多了,我們只需要了解簡單的網(wǎng)絡(luò)原理、套接字原理、協(xié)議等等就能很好的配置這個(gè)框架,以進(jìn)行遠(yuǎn)程調(diào)用。它將遠(yuǎn)程調(diào)用延伸到了任何地方,不只是在同一進(jìn)程內(nèi)了。
原有的同一進(jìn)程內(nèi)的遠(yuǎn)程調(diào)用框架沒有變,Remoting只是添加了點(diǎn)東西以支持夸進(jìn)程夸網(wǎng)絡(luò)。(比如:RefObjet對(duì)象RealProxy對(duì)象)
之前我說過Remoting是一個(gè)高擴(kuò)展性的框架,從上圖中我們可以看出它的基本結(jié)構(gòu)是很清晰的、很模塊化。都是通過接口關(guān)聯(lián),只要我們熟悉了之后就能切入自己的邏輯。
全程面授,不高薪都難
申請(qǐng)成功后,我們將在24小時(shí)內(nèi)與您聯(lián)系
招生熱線: 4008-0731-86 / 0731-82186801
學(xué)校地址: 長沙市天心區(qū)團(tuán)結(jié)路6號(hào)
Copyright © 2006 | 湖南大計(jì)信息科技有限公司 版權(quán)所有
湘ICP備14017520號(hào)-3