Dot-Net
有人舉個例子說明我為什麼要自託管 WCF 服務
我想我的大腦已經忙於 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 上是不可能的