日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

WCF与 Web Service的区别

發(fā)布時(shí)間:2025/3/21 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WCF与 Web Service的区别 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

【0】問(wèn)題:

  • WCF與 Web Service的區(qū)別是什么?
  • 和ASP.NET Web Service有什么關(guān)系?
  • WCF與ASP.NET Web Service的區(qū)別是什么?
  • 這是很多.NET開發(fā)人員容易搞錯(cuò)的問(wèn)題。面試的時(shí)候也經(jīng)常遇到。而很多新手也會(huì)因?yàn)槌醮谓佑|WCF或者Web Service而陷入迷惑的境地,很多資料介紹的也不準(zhǔn)確。我甚至和許多許多年開發(fā)經(jīng)驗(yàn)的開發(fā)人員討論這些問(wèn)題,他們都無(wú)法分清二者的區(qū)別。相信很多人也被誤導(dǎo)。以下是最常見(jiàn)的錯(cuò)誤觀點(diǎn):

  • Web Service太舊了;
  • Web Service 就是 ASP.NET Web Service;
  • WCF比Web Service性能好;
  • WCF 比 ASP.NET Web Service快;
  • WCF比Web Service速度快;
  • WCF比Web Service強(qiáng)大;
  • WCF比 Web Service安全;
  • Web Service必將被WCF取代;
  • WCF其實(shí)就是Web Service;
  • WCF非常簡(jiǎn)單,其實(shí)沒(méi)有什么;
  • 等等結(jié)論。這些觀點(diǎn)我相信很多人都聽說(shuō)或接觸過(guò)。后面我們會(huì)詳細(xì)分析每個(gè)觀點(diǎn)的錯(cuò)誤的原因。以后大家在學(xué)習(xí)和面試中也好有個(gè)參考。

    ——————————————————————————————————————–

    下面有個(gè)類似的問(wèn)題是來(lái)自于WCF中文論壇,引用ymq:?
    不錯(cuò)?
    以前用web service用的比較多,基本熟悉了,最近接觸到WCF,也許是剛接觸的原因,感覺(jué)怎么比 web service 復(fù)雜的多,優(yōu)點(diǎn)好像也不是很明顯 。。。。。?
    謝謝,我曾經(jīng)在WCF中文技術(shù)論壇里和他們討論過(guò)一個(gè)問(wèn)題。

    ——————————————————————————————————————–

    下面我們來(lái)詳細(xì)討論一下二者的區(qū)別。Web Service和WCF的到底有什么區(qū)別。

    【1】Web Service:嚴(yán)格來(lái)說(shuō)是行業(yè)標(biāo)準(zhǔn),也就是Web Service 規(guī)范,也稱作WS-*規(guī)范,既不是框架,也不是技術(shù)。

    ?????? 它有一套完成的規(guī)范體系標(biāo)準(zhǔn),而且在持續(xù)不斷的更新完善中。

    ?????? 它使用XML擴(kuò)展標(biāo)記語(yǔ)言來(lái)表示數(shù)據(jù)(這個(gè)是夸語(yǔ)言和平臺(tái)的關(guān)鍵)。微軟的Web服務(wù)實(shí)現(xiàn)稱為ASP.NET Web Service.它使用Soap簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議來(lái)實(shí)現(xiàn)分布式環(huán)境里應(yīng)用程序之間的數(shù)據(jù)交互。WSDL來(lái)實(shí)現(xiàn)服務(wù)接口相關(guān)的描述。此外Web services 可以注冊(cè)到UDDI中心.供其客戶查找使用。?
    ???? 后來(lái)微軟做了ASP.NET Web Service的安全,性能,數(shù)據(jù)加密、解密,托管宿主等多方面的擴(kuò)展,稱為WSE系列,這個(gè)是過(guò)度產(chǎn)品,最高到WSE3.0.后來(lái)就是WCF時(shí)代。(WCF分布式開發(fā)必備知識(shí)(4):Web Service?)

    【2】ASP.NET Web Service:微軟提供了Web服務(wù)的開發(fā)框架,屬于ASP.NET Framework的一部分,但是支持早起的WS規(guī)范。比如SOAP1.1。?
    【3】WCF:WCF 是一個(gè)分布式應(yīng)用的開發(fā)框架,屬于特定的技術(shù),或者平臺(tái)。既不是標(biāo)準(zhǔn)也不是規(guī)范。

    ??????? WCF其實(shí)一定程度上就是ASP.NET Web Service,因?yàn)樗С諻eb Service的行業(yè)標(biāo)準(zhǔn)和核心協(xié)議,因此ASP.NET Web Service和WSE能做的事情,它幾乎都能勝任,跨平臺(tái)和語(yǔ)言更不是問(wèn)題(數(shù)據(jù)也支持XML格式化,而且提供了自己的格式化器)。?
    但是WCF作為微軟主推一個(gè)通訊組件或者平臺(tái),它的目標(biāo)不僅僅是在支持和集成Web Service,因?yàn)樗€兼容和具備了微軟早期很多技術(shù)的特性。?
    ???????? 根據(jù)微軟官方的解釋,WCF(之前的版本名為“Indigo”)是使用托管代碼建立和運(yùn)行面向服務(wù)(Service Oriented)應(yīng)用程序的統(tǒng)一框架。它使得開發(fā)者能夠建立一個(gè)跨平臺(tái)的安全、可信賴、事務(wù)性的解決方案,且能與已有系統(tǒng)兼容協(xié)作。WCF是微軟分布式應(yīng)用程序開發(fā)的集大成者,它整合了.Net平臺(tái)下所有的和分布式系統(tǒng)有關(guān)的技術(shù),如Enterprise Sevices(COM+).Net Remoting、Web Service(ASMX)、WSE3.0和MSMQ消息隊(duì)列。以通信(Communiation)范圍而論,它可以跨進(jìn)程、跨機(jī)器、跨子網(wǎng)、企業(yè)網(wǎng)乃至于 Internet;以宿主程序而論,可以以ASP.NET,EXE,WPF,Windows Forms,NT Service,COM+作為宿主(Host)。WCF可以支持的協(xié)議包括TCP,HTTP,跨進(jìn)程以及自定義,安全模式則包括SAML, Kerberos,X509,用戶/密碼,自定義等多種標(biāo)準(zhǔn)與模式。也就是說(shuō),在WCF框架下,開發(fā)基于SOA的分布式系統(tǒng)變得容易了,微軟將所有與此相關(guān)的技術(shù)要素都包含在內(nèi),掌握了WCF,就相當(dāng)于掌握了叩開SOA大門的鑰匙。(MSDN)(WCF分布式開發(fā)步步為贏(1):WCF分布式框架基礎(chǔ)概念?)?
    如果你想對(duì)WCF學(xué)習(xí)系統(tǒng)化一些,必須向?qū)θ鏓nterprise Sevices(COM+).Net Remoting、Web Service(ASMX)、WSE3.0和MSMQ消息隊(duì)列也有個(gè)詳細(xì)的認(rèn)識(shí)的話,你可以看看我的博客,在此之前我對(duì)WCF學(xué)習(xí)相關(guān)的知識(shí)都系統(tǒng)的進(jìn)行了整理。這個(gè)是文章目錄:老徐的博客:文章目錄 。?
    還有一點(diǎn)就是,很多人對(duì)WCF學(xué)習(xí)感興趣,當(dāng)初我也是,直接奔WCF而來(lái),其實(shí)在后來(lái)的學(xué)習(xí)中感覺(jué)吃力,因?yàn)閃CF宣稱的很多特性和優(yōu)勢(shì),我們無(wú)法理解,更無(wú)法體會(huì)。文中提到了很多微軟的早期技術(shù)如果都沒(méi)有接觸過(guò),這些對(duì)比我們就無(wú)法有深刻的體會(huì)。

    ???????????? 建議先從基礎(chǔ)開始,然后在關(guān)注一些WCF較高級(jí)的應(yīng)用或者概念,循序漸進(jìn)。網(wǎng)上也有很多WCF學(xué)習(xí)的資料,等有了一定基礎(chǔ)以后可以看看付中凱大哥的講座,這個(gè)需要一定的基礎(chǔ)。?
    原帖地址:?http://social.microsoft.com/Forums/zh-CN/wcfzhchs/thread/c06420d1-69ba-4aa6-abe5-242e3213b68f?
    優(yōu)點(diǎn)的話,只有你學(xué)習(xí)使用以后才有體會(huì),等你開始學(xué)習(xí)了WCF你就會(huì)慢慢喜歡上它~很好的一個(gè)通信框架,這個(gè)是微軟SOA重要的技術(shù)框架。Biztalk里發(fā)布和調(diào)用WCF服務(wù)很常見(jiàn),它提供了豐富的適配器。你有興趣可以了解一下。~

    ?

    【4】結(jié)論:

    ?? 那么我們看了這些分析以后,就可以知道以上的結(jié)論為什么錯(cuò)誤了。

    不能哪一個(gè)技術(shù)框架和行業(yè)標(biāo)準(zhǔn)作比較,任何對(duì)于二者的比較 都是錯(cuò)誤的,因?yàn)閮烧吒徊辉谕粋€(gè)范疇里。就好比不能拿個(gè)汽車和交通法規(guī)比較一樣。這是個(gè)誤區(qū)。

  • Web Service太舊了:框架都版本的差異,功能特性上卻是有新舊之分,但是對(duì)于特定的系統(tǒng),適合自己的就是最好的。
  • Web Service 就是 ASP.NET Web Service:同樣不是一個(gè)范疇。前者規(guī)范,后者是框架
  • WCF比Web Service性能好:不是一個(gè)范疇,
  • WCF 比 ASP.NET Web Service快:不一定,需要特定的限制條件,WCF使用BasicHttpBinding的時(shí)候與ASP.NET Web Service協(xié)議一樣。
  • WCF比Web Service速度快:同樣概念不嚴(yán)格。
  • WCF比Web Service強(qiáng)大:WCF卻是集成了多種微軟的分布式技術(shù),但是這里應(yīng)該嚴(yán)格說(shuō)是:ASP.NET Web Service
  • WCF比 Web Service安全:不嚴(yán)格。其次WCF也可以開發(fā)完全裸奔的應(yīng)用程序。
  • Web Service必將被WCF取代;Web Service不會(huì)被WCF取代!前者是一套廣泛使用的規(guī)范。如果說(shuō)WCF能取代的是ASP.NET Web Service,因?yàn)槎叨际?NET平臺(tái)上的技術(shù)。
  • WCF其實(shí)就是Web Service:WCF在某些情況下不遵守 Web服務(wù)規(guī)范,也就是可以開發(fā)非服務(wù)性質(zhì)的應(yīng)用。而且不能簡(jiǎn)單等同。
  • WCF非常簡(jiǎn)單,其實(shí)沒(méi)有什么:WCF雖然是個(gè)服務(wù)開發(fā)框架,但是如果你深入學(xué)習(xí),會(huì)發(fā)現(xiàn)WCF架構(gòu)的強(qiáng)大之處。單單是WCF安全這一塊已經(jīng)相當(dāng)?shù)膹?fù)雜了。況且還要統(tǒng)一編程模型,兼容和支持許多早期的分布式技術(shù)。很多人輕易下這樣的結(jié)論,一定是僅僅看了一些文章或書籍,不一定寫過(guò)代碼。高手不會(huì)這樣武斷地下結(jié)論。
  • 看了這個(gè)文章,希望你對(duì)于WCF和WebService有個(gè)透徹的理解。

    而不會(huì)再產(chǎn)生這樣的疑惑。

    無(wú)論是參加面試,作為候選人,還是面試官,弄清楚這些基礎(chǔ)的問(wèn)題,相當(dāng)?shù)谋匾2灰鲇苿e人,也不要被別人忽悠。

    技術(shù)人員應(yīng)該堅(jiān)持嚴(yán)謹(jǐn)?shù)膶W(xué)習(xí)態(tài)度。~

    呵呵,希望對(duì)大家的學(xué)習(xí)有幫助~

    《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

    總結(jié)

    以上是生活随笔為你收集整理的WCF与 Web Service的区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。