2008-11-04 47 views
5

在IIS上託管WCF服務時,您可以選擇手動配置端點,也可以通過WebServiceHostFactory聲明性地進行配置。手動創建端點似乎並不困難,所以我想我會問。使用WebServiceHostFactory優缺點

  • 使用WebServiceHostFactory有什麼好處?
  • 動態創建端點是否有任何性能影響?

回答

3

你能澄清:你具體問網絡 ServiceHostFactory(EMPH: 「網絡」)?或者只是IIS託管它與通過代碼啓動您自己的服務器之間的區別?

WebServiceHostFactory是.NET 3.5中的新功能,並且支持一些較新的AJAX/JSON內容。

實際上,在IIS(使用.svc)中,您已經在使用ServiceHostFactory - 只是WCF附帶的默認工具。如果你願意,你可以編寫自己的工廠,過去我創建了一個工廠,只有在https上監聽(我在一個託管多個站點的農場發生了問題,它無法識別正確的站點爲http,但https很好 - 所以我完全禁用http通過工廠)。

性能應該不會有什麼不同,只要你不發瘋,監聽200終點......

一般情況下,手動創建,當你在託管服務器(服務器使用例如)一個Windows服務。對於某些情況,IIS很不錯,但是應用程序池可以被回收,所以對於需要保留長期狀態的服務器來說並不理想。 IIS具有更容易配置的優點,特別是安全性(SSL等)和壓縮。

+0

是的,我特意提一下WEB服務主機 – jdiaz 2008-11-05 03:33:07

0

我絕對不是專家(還),但我想到缺點是:

  • 你只能有一次一個認證 方法(即不能同時 Windows和匿名。)CF 。 WebServiceHostFactory and IIS authentication
  • 錯誤處理是很難在 通用的方法做(沒有Application_OnError, 所以你必須設置你的 端點手動畢竟)

臨:

  • 費力從頭開始設置REST服務。