Dot-Net

有人舉個例子說明我為什麼要自託管 WCF 服務

  • August 31, 2010

我想我的大腦已經忙於 IIS 和 Web 應用程序,以至於我想不出一個理由來經歷使用自託管 WCF 服務的麻煩。我一直都可以使用 IIS,因此創建自託管 WCF 服務似乎比我想做的工作要多。我為什麼要這樣做?

很多點:

  • 不需要 IIS - 這在某些伺服器上可能是一個很大的優勢
  • 您可以完全定義服務地址 - 使用 IIS,它們由伺服器名稱、虛擬目錄名稱以及 SVC 文件的名稱和副檔名決定(例如http://server/virtualdir/yourservice.svc,在使用自託管時,您可以使用http://Server:7171/Services/MegaService或任何您喜歡的)
  • 沒有遇到與回收應用程序池相關的問題的風險(可以通過為 WCF 服務使用單獨的專用應用程序池來顯著減少這種情況)
  • 停止和啟動 NT 服務的能力,例如使這些服務離線一段時間(我相信用 IIS 不太容易做到)
  • 對創建和選項的更多控制ServiceHost
  • 支持所有開箱即用的協議 - netTcpBinding 等在 IIS7 上需要額外的步驟(可能會被遺忘),而在 IIS6 上是不可能的

引用自:https://stackoverflow.com/questions/2899271