張旭

摘要:文章通過介紹.NET框架概述,分析.NET框架下分布式通信技術(與.NET框架下分布式通信技術對比),對基于NET通信技術的生產商應用模型展開探討,旨在為如何實現.NET框架下分布式通信技術的有效應用研究提供一定的參考思路。
關鍵詞:.NET框架;分布式;通信技術
智能客戶端是.NET平臺下的新型部署方式,.NETRemoting,Web service,En terprise service是.NET框架下連接智能客戶端與后臺服務端的主要消息通信技術。智能客戶端系統全面性能很大程度上受選取何種通信方式影響,因此對.NET框架下分布式通信技術展開研究有著十分重要的現實與理論指導意義。
1..NET框架概述
.NET框架是指用于構建、規劃及運行XML Web服務和相關應用程序的編程模型,能夠使高度分布式Internet背景下應用程序開發得以簡化。
.NET框架包括統一類庫、通用語言運行時2項主要組件。其中,統一類庫是一個綜合性的可重用類型集合,用戶可通過對統一類庫的使用開發出Web窗體、XML Web服務等一系列應用程序。其涵蓋的技術主要為ASR NET、XML類、windowsForms、企業服務以及web Forms等。作為.NET框架的基礎,用戶可把通用語言運行時視成一項在執行期間管理代碼的代理,其輸出線程管理、內存管理及遠程處理等核心服務,同時強制運行嚴格的類型安全及保證可靠性、安全性的相關形式代碼準確性。本質上而言,代碼管理的含義即為運行時的基本原則。
.NET框架可通過非托管組建承載,此類組件把通用語言運行時加載至自身進程中同時開啟托管代碼執行,進一步建立起一個能夠一并對托管、非托管功能進行利用的軟件環境。.NET框架一方面提供相應的運行庫宿主,一方面促進第三方運行庫宿主開發。
2..NET框架下分布式通信技術對比
在智能客戶端應用系統開發過程中,應當充分權衡系統安全性、表示層實現、部署維護及支持離線應用與否等方面內容,不過最需要考慮的是怎么去達成前后臺客戶端、服務端相互的通信。智能客戶端應用系統中,囊括了.NETRemoting,Web service,Enterprise service等典型通信技術。其中,.NET Remoting是一項相對于DCOM的技術,建立了某一許可對象經由程序域與另x~象開展交互的結構,與DCOM相互更加安全、便捷,能夠同時支持多種協議;Webservice是一項能夠跨平臺的技術框架,制定了建立跨系統、跨平臺、跨語言等的分布式應用可行方案;Enterpriseservice是一項COM+月艮務基礎框架訪問技術,大部允NET特性集成至該項技術中,一定程度使訪問此類服務時得到了簡化。這3項技術均能夠有效實現客戶端與服務端的連接,不過各項技術有著不同的關注點,在此作下述對比。
2.1.NET框架下分布式通信技術的性能對比
智能客戶端系統整體性能很大程度上受通信性能影響。通過使.NET Remoting,Web service,Enterprise service選取同一手段,逐一大數據量DataSet、小數據量DataSet及大數據量對象集合的通信時間展開比較(見表1)。
由表1可發現,在大數據量DataSet、小數據量DataSet用例中,3項技術的通信時間數據對比差異不顯著,這是由于即便.NET Remoting,Enterprise service選取的是更便捷傳輸的二進制機制,然而在對DataSet進行傳輸期間,仍舊要把DataSet序列化為xml,因此,.NET Remoting,Enterpriseservice僅存在細微的優勢。在大數據量對象集合用例中,憑借集合形式返回與大數據量Dataset一致的數據結構,全面處理時間明顯減少,同時.NET Remoting,Enterpriseservice相較于Web service存在顯著的性能優勢。經上述對比可知,相較于選取哪一種通信方式,經由對象集合返回數據結果對系統性能產生的影響明顯更大,且.NET Remoting,Enterprise service在處理時間方面明確要比Web service耗費時間少。
2.2.NET框架下分布式通信技術的安全性
客戶端與服務端通信期間,.NET web service存在內建安全機制。.NET Remoting不存在自身安全模式,身份授權、驗證均通過通道、主機進程開展既可對安全模式進行自定義并將其插入,又可通過IIS開展。Enterprise service將DCOM作為幌子開展遠程通信,且DCOM具備十分強的安全性。
2.3.NET框架下分布式通信技術的耦合性
智能客戶端系統開發與部署的靈活性很大程度上受耦合性影響,即伴隨耦合性松散度的提升,系統開發與部署便越來越簡單。Web service相互耦合性較為松散,連接中不論哪一方都能夠對執行機制進行更改,并不對應用程序有序運行構成影響。倘若單從部署層面而言,Web service為智能客戶端系統最佳通信技術。.NET Remoting同樣部署相對簡單,需要開展的工作僅為程序集部署、配置文件更改。然而,一般情況下,.NET Remoting要經由專門端口開展二進制通信,由此使得其與網絡拓撲結構耦合性極其強。相較于前2項技術,Enterprise service耦合性略顯不足,但是經由松散耦合時間機制可使客戶端與服務端組建緊耦合的特性得到一定程度緩解。
3.基于.NET通信技術的生產商應用模型
通過對現階段客戶端及分布式通信技術的探討,制定了一類前端采用智能客戶端,后臺基于不同類型業務邏輯服務組件的生產商應用模型。智能客戶端能夠使操作界面變得越來越智能化、人性化,結合后端一系列通信技術可使操作流程變得越來越簡化,提升生產商決策反應速度,強化生產商競爭水平。
3.1生產商內部生產監測
在生產商內部,生產工作是一項繁雜的系統工程,不僅有著復雜的流程,還要不同資源的配合,且伴有嚴苛的實時性要求。與.NET Remoting、Web service相比,Enterpriseservice最主要的不同之處在于對事務的處理上。選取Enterprise service所看重的是其良好的分布式事務操作水平,每一組件均為繼承制Enterprise service、Systrm.Enterprise service組件客戶端與服務端相關聯,結合生產商生產工作實質內容來對組件相應需求功能予以指定,客戶端經由服務端來傳達對應配置的每一組件,產生服務鏈,進而使具體生產需求得到滿足。
3.2生產商內部生產指導
通常情況下,生產商內部生產指導是對生產數據展開分析,對不同部門相互生產狀況予以協調。.NET Remoting,Web service均是適用的技術,不過有著不一致的關注點。Web service有著相對廣泛的通用性,能夠跨平臺,不過webservice在通信期間不斷序列化會使得應用程序性能逐步下降。就生產商應用程序來說,一旦傳輸量十分高時,簡單對象訪問協議系統會出現開銷過度情況,要想達成盡可能快的生產指導解決方案,于該級系統中,.NET Remoting顯然更為適用。.NET Remoting建立了某一許可對象經由程序域與另一對象開展交互的結構。不管這2個對象處在一個進程與否,均能夠應用。就框架上來說,.NET Remoting獨享十分適宜經由網絡對資源進行訪問,而不需要應對基于簡單對象訪問協議的Web service[NI臨的困難。
4.結語
總而言之,.NET Remoting,Web service,En terpriseservice是.NET框架下連接智能客戶端與后臺服務端的主要消息通信技術,智能客戶端系統全面性能很大程度上受選取何種通信方式影響。相關人員務必清楚認識NET框架,全面分析.NET框架下分布式通信技術的不同,不斷鉆研研究,總結經驗,積極促進.NET框架下分布式通信技術的有效應用。