2017-05-30 99 views
0

我有一個使用IIS inproc會話狀態的.NET遠程處理應用程序。並單獨有另一臺服務器的SQL Server數據庫。問題是如果我回收應用程序服務器中的應用程序池,是否會斷開當前正在數據庫中處理的查詢?IIS中的會話狀態

我之所以問這個問題,是因爲我們最近在數據庫中運行緩慢(長時間運行的查詢)。所以我們決定執行應用程序池的回收。並期望在db中殺死長時間運行的查詢,但事實上並非如此。

+0

_「我們的Web應用程序很慢,讓我們回收應用程序池」_ - 這將如何提高生產力?如果有一位客戶開始了昂貴的查詢,即使回收應用程序池會取消該查詢,用戶是否會再次發出相同的操作? – CodeCaster

回答

1

由於查詢在SQL服務器中運行,因此無法通過應用程序池回收來殺死數據庫中長時間運行的查詢。

您可以使用殺{} SPID在 SQL服務器這裏提到:How to kill/stop a long SQL query immediately?

0

沒有也不會與SQL服務器的連接。因爲查詢在不同的服務器上運行。