ASP.NET Core 服務使用IIS託管註冊Consul時的坑

你們習慣將服務註冊寫進Startup中的Configure管道配置,用來在服務啓動時進行Consul服務註冊,如圖:windows

 

而後因爲某些緣由,我更適合將服務部署在IIS,部署好以後,點擊啓動網站,卻發現服務並無註冊進Consul,而後我就查其緣由:less

使用 IIS 在 Windows 上託管 ASP.NET Core

 

 

Windows 進程激活服務 (WAS)網站

 

 

 也就是說,使用IIS託管時,無論是進程內外託管,都會有這個問題,第一個請求時,應用纔會運行起來,我用Exceptionless作了實測(進程外託管程序是dotnet),驗證後無疑。spa

 

 

 

解決方案:1.無論是進程內託管仍是進程外託管的方式,不使用IIS託管須要註冊的服務。3d

     2.服務部署在IIS後,手動點擊瀏覽一下網站或其餘發請求的方式,來發送第一個請求。blog

相關文章
相關標籤/搜索