我們目前有一個.NET 4應用程序,由後臺運行的Windows服務和本地或遠程客戶端(通常只有1-3個)組成。健壯的自託管服務器的最佳選擇:WCF與ASP.NET Web Api
客戶端有一個WPF GUI並需要來自Windows服務的一些數據。因此,我們使用帶有NamedPipe綁定的WCF作爲本地客戶端,並使用NetTcp綁定遠程客戶端。這有效,但我們經常遇到無法訪問的端點(通道故障或未找到等)的問題。我們已經嘗試重建故障連接,但它似乎很脆弱......
現在進入Web Api:它看起來像基於HTTP的堆棧可能更健壯(沒有通道,沒有端點,可以自行託管Windows服務)。似乎沒有問題,因爲每個請求都被單獨處理。所以如果某件事失敗了,你只需重複這個請求。 (而且我們有來自其他應用程序的ASP.NET MVC經驗,所以這對我們來說並不陌生)。
現在我們正在考慮什麼可能是我們最好的選擇。 「硬化」我們現有的WCF服務(一個約15個操作的服務接口)或將接口移動到Web Api並將它作爲HTTP請求(使用JSON數據)運行會更好嗎?性能不是我們這裏的主要問題...
任何想法? Hartmut
如果仍然自託管WebAPI比自託管WCF更好,請您介意更新我們。 – 2016-10-20 20:07:26