看看這個答案:Problem with IHttpAsyncHandler and ASP.NET "Requests Executing" counter的技術觀點。
你有一些問題:
如果請求尚未完成,並且用戶看見沒有什麼再次發生上點擊按鈕,再而三?
在這種情況下,多個請求將在您的Web服務器上排隊,並且它們都將被處理。這會影響性能。正如你所提到的,你的用戶界面應該通過禁用按鈕並給用戶一些反饋意見來阻止這個請求正在被處理。
在我的web應用程序和數據庫中會發生什麼?在投擲另一個之前是否會等待先前的請求完成?
不需要。除非您鎖定數據庫中的單個資源,否則每個請求將由IIS中的單獨工作人員處理。併發請求的數量是有限制的,但通常會同時發生。如果您正在進行的工作是CPU密集型的,那麼CPU資源可能會出現一些爭用,並且整體性能會受到影響。你一定要看看AsyncHandler模型。
它會接受每個會話多個請求嗎?
是
我的web應用程序將凍結?
凍結可能是錯誤的詞。如果請求以比Web服務器更快的速度進入,請求隊列可能會變大。如果發生這種情況,用戶將看到您的Web服務器無響應或速度緩慢。
我的數據庫將從同一用戶同時執行多個sql請求嗎?
可能。
我的sql服務器將凍結?
同上。如果您的SQL Server無法處理請求的速度比進入的速度更快,則您的用戶可能會覺得您的應用程序無響應。
tx很多答案! – user627283