2009-02-02 148 views

回答

4

對我來說,通過SOAP,WS *,TCP,MSMQ,命名管道或其他任何傳輸方式進行通信的代碼是相同的。

2

一個主要的優點是WCF允許爲開發人員提供單一一致的Windows通信技術訪問權限,從而使SOA應用程序更容易開發。微軟已經抽象了很多管道工作,以實現這一點。

一個缺點是,WCF是微軟實施的SOA,因此它的API完全由MS控制,這使得互操作性有點困難。 另外,爲了部署WCF應用程序,您將需要運行WCF應用程序的平臺上的更多底層硬件資源,因爲還有一個額外的抽象層需要處理。

2

優勢

  • 它做了很多不同的組件,所以你可以創建安全,運輸新的組件,認證
  • 它的速度比ASMX
  • 支持縮放/負載平衡
  • 其互操作性,適用於java等等..

缺點 - 瞭解所有不同傳輸類型/安全規範的學習曲線。

如果你想要的東西更快,你就必須去TCP層

編輯也是其難以得到認真處理併發做連接的客戶端

0

我發現它很容易建立和學習。我有一個Web服務在幾個小時內運行,沒有任何使用WCF的經驗。我現在可以在幾分鐘內完成。

這樣做的缺點是我對web服務幾乎一無所知。這可以在以後轉過身來咬你。根據對事物如何工作的錯誤假設,很容易做出錯誤的設計決策。例如,維護服務類中的狀態非常容易,但這會在稍後導致縮放問題。

1

我不認爲除了必須使用WinStack之外,應該有內在的權衡。 WCF是應該更換兩個.NET遠程和沼澤標準的Web服務(或者更確切地說,WCF還可以做Web服務)

6

主要優勢:一旦你在學習曲線,WCF使得它比較容易暴露和消費軟件組件。即將組件烘焙功能添加到WCF服務合同中,開發人員可以通過更改主機和配置信息來在單個框中跨Windows內部網或整個互聯網跨進程公開同一組件。同樣,所述組件的客戶也很容易在任何這些場景中使用它。

主要缺點:學習曲線。當許多開發人員開始研究WCF時,WCF似乎非常令人望而生畏。我試圖進入Juval Lowy的「編程WCF服務」做了幾次錯誤的嘗試。儘管我發現一旦我開始真正創建和使用組件,理解變得很快。

記住關鍵的一點是,WCF讓你寫了一些不錯的功能代碼的,它包裝成你就可以比較容易地使用幾乎只用在任何地方有關的安全性,可靠性和耐用性的任何數量的組件。

與我們之前被迫使用的相比,WCF是fantasitc!

1

優點是SOA應用程序的標準體系結構。您可以自定義體系結構的組件以啓用與任何類型的非Windows客戶端的連接,但是存在陡峭的學習曲線。