大家習慣將服務註冊寫進Startup中的Configure管道配置,用來在服務啟動時進行Consul服務註冊,如圖: 然後由於某些原因,我更適合將服務部署在IIS,部署好之後,點擊啟動網站,卻發現服務並沒有註冊進Consul,然後我就查其原因: 使用 IIS 在 Windows 上托管 ASP.NE ...
大家習慣將服務註冊寫進Startup中的Configure管道配置,用來在服務啟動時進行Consul服務註冊,如圖:
然後由於某些原因,我更適合將服務部署在IIS,部署好之後,點擊啟動網站,卻發現服務並沒有註冊進Consul,然後我就查其原因:
使用 IIS 在 Windows 上托管 ASP.NET Core
也就是說,使用IIS托管時,不管是進程內外托管,都會有這個問題,第一個請求時,應用才會運行起來,我用Exceptionless做了實測(進程外托管程式是dotnet),驗證後無疑。
解決方案:1.不管是進程內托管還是進程外托管的方式,不使用IIS托管需要註冊的服務。
2.服務部署在IIS後,手動點擊瀏覽一下網站或其他發請求的方式,來發送第一個請求。