2014-01-30 35 views
0

我剛剛在使用VB 2010學習ASP.NET,儘管我已經取得了很大的進步,但我無法解決一個問題。我也在網上尋找答案,但我沒有找到任何與我正在處理的內容。 ...雖然我可能不會使用正確的搜索字詞。單擊按鈕後的長時間延遲

無論如何,這是一個應用程序,將運行在我們公司的互聯網網站上,要求用戶輸入信息到文本框並點擊按鈕接受它。然後它會顯示一個模式彈出窗口,要求用戶確認。彈出窗口有一個「確認」按鈕和一個「取消」按鈕。取消按鈕立即生效(隱藏確認彈出窗口),但確認按鈕會掛起幾秒鐘,然後移動到下一步,這是一個模式「謝謝」彈出窗口。確認按鈕將數據寫入數據庫。

現在,這就是它在開發環境中的工作原理。但是,當它位於生產服務器上時,它將在它執行任何操作之前坐在那裏,以知道多久。我可以告訴它正在寫入數據庫,然後在頁面上顯示數據,但「確認」彈出窗口保持不變,「謝謝」彈出窗口從不顯示。此外,該應用程序應該發送一封電子郵件給用戶作爲確認,但它不這樣做。

當它像這樣掛斷時,我從來沒有等待足夠長的時間來看它什麼時候趕上。當它像這樣生活的時候,我不知道調試它的方法。

有關該頁面的更多信息:有幾個更新面板,其中一個響應計時器滴答滴答每秒更新頁面上的字段。其他人被設置爲「有條件」,被其他事件更新。例如,Confirmation和Thank You模式是在有條件的更新面板中響應不同的事件。

所以我有兩個問題:任何人都可以告訴我關於掛機,並且有一種方法可以從一個活網站進行調試嗎?哦,也許是第三個:你有更多的更新面板嗎?

更新:後續問題:它可以在不同的線程上關閉,從正確的線程脫離軌道嗎?我從來沒有真正理解線程,但這似乎是一種可能性。

回答

0

我的不好。我沒有提到一個方面,因爲我不知道這是一個因素,但它是。部分過程是將某些事件記錄到日誌文件中。它在我們的IIS中設置的方式,這是一個很大的禁忌。所以這是拋出一個錯誤,但錯誤只是表現爲一個長時間的延遲。我註釋了打開,寫入和關閉日誌文件的代碼,這一切都很好。

0

這可能是許多事情,所以這可能是您需要潛入並進行故障排除的事情,而且這可能不是我們能夠幫助太多的事情。

首先,強制性要求:請把你的代碼:)

現在,一些作品快速開發,慢慢地在生產通常資源問題或代碼/數據的問題。首先,快速瀏覽一下服務器,確保它適合多個用戶以及所有這些任務。值得一看,但它通常是代碼或數據的問題。

該更新命令在做什麼?它背後的SQL是否寫得很好而且有效?在另一個用戶正在做某些事情並且您的代碼實際上正在等待它完成更新之前,是否有可能發生的數據庫鎖定?數據庫中有多少行/正在執行多少行?

我會首先運行SQL跟蹤來查看實際發生的情況,並獲得關於每次執行需要多長時間的數據庫調用的想法。如果這不是答案,請查看VB代碼,看看它是否有效寫入。如果沒有,請返回服務器資源。沒有看到任何代碼或不知道應用程序應該做什麼,我敢打賭數據庫查詢是罪魁禍首。