辨別WCF與WebService的異同、優勢。本站提示廣大學習愛好者:(辨別WCF與WebService的異同、優勢)文章只能為提供參考,不一定能成為您想要的結果。以下是辨別WCF與WebService的異同、優勢正文
起首對WCF與WebService的界說停止歸納綜合,接著引見了WCF的優勢,最初就是對WCF與WebService二者的基本差別停止比擬,詳細內容以下
1、界說
1.WebService:嚴厲來講是行業尺度,不是技巧,應用XML擴大標志說話來表現數據(這個是誇說話戰爭台的症結)。微軟的Web辦事完成稱為ASP.NET Web Service.它應用Soap簡略對象拜訪協定來完成散布式情況裡運用法式之間的數據交互。WSDL來完成辦事接口相干的描寫。另外Web services 可以注冊到UDDI中間.供其客戶查找應用。 後來微軟做了ASP.NET Web Service的平安,機能,數據加密、解密,托管宿主等多方面的擴大,稱為WSE系列,這個是過度產物,最高到WSE3.0.後來就是WCF時期。
2.WCF:其實必定水平上就是ASP.NET Web Service,由於它支撐Web Service的行業尺度和焦點協定,是以ASP.NET Web Service和WSE能做的工作,它簡直都能勝任,跨平台和說話更不是成績(數據也支撐XML格局化,並且供給了本身的格局化器)。
然則WCF作為微軟主推一個通信組件或許平台,它的目的不只僅是在支撐和集成Web Service,由於它還兼容和具有了微軟晚期許多技巧的特征。
依據微軟官方的說明,WCF(之前的版本名為“Indigo”)是應用托管代碼樹立和運轉面向辦事(Service Oriented)運用法式的同一框架。它使得開辟者可以或許樹立一個跨平台的平安、可托賴、事務性的處理計劃,且能與已有體系兼容協作。WCF是微軟散布式運用法式開辟的集年夜成者,它整合了.Net平台下一切的和散布式體系有關的技巧,如Enterprise Sevices(COM+).Net Remoting、Web Service(ASMX)、WSE3.0和MSMQ新聞隊列。以通訊(Communiation)規模而論,它可以跨過程、跨機械、跨子網、企業網甚至於 Internet;以宿主法式而論,可以以ASP.NET,EXE,WPF,Windows Forms,NT Service,COM+作為宿主(Host)。WCF可以支撐的協定包含TCP,HTTP,跨過程和自界說,平安形式則包含SAML, Kerberos,X509,用戶/暗碼,自界說等多種尺度與形式。也就是說,在WCF框架下,開辟基於SOA的散布式體系變得輕易了,微軟將一切與此相干的技巧要素都包括在內,控制了WCF,就相當於控制了叩開SOA年夜門的鑰匙。
2、WCF的優勢
1、同一性 後面曾經論述,WCF是關於ASMX,.Net Remoting,Enterprise Service,WSE,MSMQ等技巧的整合。因為WCF完整是由托管代碼編寫,是以開辟WCF的運用法式與開辟其它的.Net運用法式沒有太年夜的差別,我們依然可以像創立面向對象的運用法式那樣,應用WCF來創立面向辦事的運用法式。
2、互操作性 因為WCF最根本的通訊機制是SOAP(Simple Object Access Protocol 簡略單純對象拜訪協定),這就包管了體系之間的互操作性,即便是運轉分歧的高低文中。這類通訊可所以基於.Net到.Net間的通訊,以下圖所示: 可以跨過程、跨機械乃至於跨平台的通訊,只需支撐尺度的Web Service,例如J2EE運用辦事器(如WebSphere,WebLogic)。運用法式可以運轉在Windows操作體系下,也能夠運轉在其他的操作體系,如Sun Solaris,HP Unix,Linux等等。以下圖所示:
3、平安與可托賴 WS-Security,WS-Trust和WS-SecureConversation均被添加到SOAP新聞中,以用於用戶認證,數據完全性驗證,數據隱私等多種平安身分。 在SOAP 的header中增長了WS-ReliableMessaging許可可托賴的端對端通訊。而樹立在WS-Coordination和WS- AtomicTransaction之上的基於SOAP格局交流的信息,則支撐兩階段的事務提交(two-phase commit transactions)。
上述的多種WS-Policy在WCF中都授與了支撐。關於Messaging而言,SOAP是Web Service的根本協定,它包括了新聞頭(header)和新聞體(body)。在新聞頭中,界說了WS-Addressing用於定位SOAP新聞的地址信息,同時還包括了MTOM(新聞傳輸優化機制,Message Transmission Optimization Mechanism)。
4、兼容性 WCF充足的斟酌到了與舊有體系的兼容性。裝置WCF其實不會影響原本的技巧如ASMX和.Net Remoting。即便關於WCF和ASMX而言,固然二者都應用了SOAP,但基於WCF開辟的運用法式,依然可以直接與ASMX停止交互。
3、更本差別
WCF 支撐多種通訊協定 Http/Https 、TCP/UDP、MSMQ、定名管道、對等網、新聞可達性、事務流等。
WCF 可以與ASP.NET 集成、同享一個高低文(HttpContext)。
WCF 支撐多種新聞傳輸格局 :text,binary,mtom,Json 等。
WCF 平安性要強:支撐對稱平安、非對稱平安、新聞平安、傳輸平安、SSL 流平安、Windows 流平安等。
WCF 支撐多種會話形式:單向、雙向、要求/呼應。
WCF 支撐REST 。
WCF 支撐多種格局化方法。DataContractSerializer、XmlSerializer、 DataContractJsonSerializer 等。
WCF 支撐 WAS hosting、Windows 辦事 hosting、Self-Hosting、IIS hosting 等。
WCF 支撐多種並發形式:單例、單調、會話 。
以上就是本文的全體內容,願望對年夜家的進修有所贊助。