我在IIS 8.0中大約兩週前部署了一個.NET Web API應用程序。IIS ShutDownTimeLimit重新觸發Web API控制器操作
有一個很長的掛起方法可以異步處理大量的東西,它可能需要大約20/30分鐘(客戶端可以關閉應用程序並獲得帶結果的電子郵件或等待直到屏幕上該過程結束)。
問題發生後,在等待響應90秒後,調用掛起並重試再次執行相同的調用,例如:我嘗試處理15個項目(將它們插入數據庫),90秒後,進程掛起並重新開始(插入另外15條記錄),最終整個過程就會掛起,永遠不會結束。
經過長時間的搜索和搜索,我發現IIS的應用程序池ShutDownTimeLimit實際上正在殺死我的呼叫,因爲它是空閒的,並且在默認時間內沒有收到任何響應(這是90秒)。我增加了價值,基本上解決了我的問題。
但是,我仍然不確定爲什麼我的控制器上的操作被重新觸發,是否有人知道在檢測到ShutDownTimeLimit被超過後IIS實際上正在重試執行呼叫?
任何幫助,將不勝感激。
PD:我的前端只做1個確切的呼叫,沒有來自它的多個呼叫。
我遇到了完全相同的問題。你有沒有發現控制器被重新觸發的原因? –