簡體   English   中英

跟蹤Java Web應用程序中的內存不足異常

[英]Track out of memory exception in java web application

我正在使用一個Web應用程序,該應用程序讀取文件並為我提供帶有行號和其他詳細信息的搜索字符串,為此,我正在使用以下技術:

  1. 春季MVC
  2. DWR反向AJAX

FTP和共享位置文件,我正在使用此應用程序閱讀。

每次執行搜索時,都會顯示“內存不足”異常。 有沒有可用的工具可以讓我看到代碼的哪一部分正造成問題?

我嘗試了jConsole,MAT和其他工具,但由於我是性能測試的新手,所以它們看起來都很復雜。

您可以簡單地嘗試使用jVisualVM,如果您使用的是Java的最新版本,則JDK可以使用jVisualVM。 docs

它將使您能夠掛接到正在運行的進程(包括本地應用程序服務器),並生成堆轉儲以檢查什么正在使您的內存變熱。

通常,它足以滿足大多數低級內存配置/ mem-leak尋找要求。

話雖這么說,MAT可能會讓您做完全一樣的事情並且具有相似的復雜性,因此我懷疑您可能需要扎緊並閱讀一兩個關於如何使用它的教程。 該博文對Java應用程序 jVisualVM中的內存泄漏進行了詳盡的介紹。

當您使用過多的RAM時,將引發OutOfMemoryError 嘗試找出存儲大量數據的位置,例如,一個永不清除的列表。

如果找不到錯誤,請創建一個堆轉儲。 然后,打開它,看看會打磨您的記憶。 一個很棒的教程在這里: https : //blog.codecentric.de/2011/08/java-heapdumps-erzeugen-und-verstehen-4-akt/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM