我剛剛有一個Web應用程序在幾分鐘後掛起。基本上,這是一個構建和預覽表單的應用程序,非常自定義,並且經過幾分鐘的密集用戶交互之後,應用程序才停止工作。這意味着,一個請求完成,永遠不會返回一個答覆。Web應用程序在tomcat 6.0.21/7.0.11中無法線索
由於我在tomcat日誌和應用程序日誌中找不到關於掛起的任何線索,所以我「有點」迷失了。應用程序服務器正在運行,因爲我使用的是lambda/psi-probe,並且可以檢查其他甚至是麻煩的應用程序(探針本身是另一個Web應用程序)。
該應用程序使用hibernate,它工作良好很長一段時間,最近,以提高性能(休眠注入大量的查詢,如果你專門用它)我已經通過java.sql標準api引入本機sql 。我小心不要混淆兩者,它們只用於jsp,首先使用hibernate檢索一些(少數)對象,然後使用jdbc使用某些邏輯。在使用jdbc之前關閉Hibernate會話。
我已經閱讀了有關數據庫連接問題(我已經檢查過好幾次,數據庫服務器運行正常),死鎖或失控線程,使用VisualVM中的VisualVM進行檢查。
那麼,任何人都可以提供關於尋找或陷阱的線索?可以提供一些線索來使用VisualVM捕捉或捕獲假想的失控線程或死鎖?後者會啓發我,因爲我只看到等待和運行的線程。
我使用Tomcat 6.0.21(我總是試圖用7.0.11相同的結果)在Mac OSX和Linux(在開發和預機)的Java 1.6
任何想法將受到歡迎確保 感謝
爲willy
抱歉,它沒有提供任何新的東西,應用程序掛起,我沒有看到任何顯着的 – 2011-03-16 17:09:54
@willy我已經添加了另一個建議 – Rich 2011-03-17 13:00:30