[英]VisualVM connect to local TomEE very slow and can not take a heap dump
我在MAC OSX山獅上遇到了TomEE 1.5.1和VisualVM 1.7.0_09的一個非常奇怪的問題。
TomEE加載一些webapp后。使用VisualVM連接本地TomEE進程需要很長時間,連接后gc按鈕被禁用,我無法進行堆轉儲。 VisualVM的日志顯示一些錯誤。
com.sun.tools.attach.AttachNotSupportedException: Unable to open socket file: target process not responding or HotSpot VM not loaded
at sun.tools.attach.BsdVirtualMachine.<init>(BsdVirtualMachine.java:90)
at sun.tools.attach.BsdAttachProvider.attachVirtualMachine(BsdAttachProvider.java:63)
at com.sun.tools.attach.VirtualMachine.attach(VirtualMachine.java:213)
at com.sun.tools.visualvm.attach.AttachModelImpl.getVirtualMachine(AttachModelImpl.java:104)
Caused: java.io.IOException: Unable to open socket file: target process not responding or HotSpot VM not loaded
.java_pid<pid>
文件未在tmp文件夾中創建。
但是如果我在啟動它之后和加載任何webapps之前使用VisualVM連接TomEE,那么將創建.java_pid<pid>
文件,並且VisualVM將立即連接到它,並且堆轉儲工作。
另一個解決方法是修改catalina.sh以將tools.jar添加到ClassPath並刪除openejb javaagent,然后在TomEE完全啟動后連接正常工作。
無法在ubuntu機器上重現。
可能jvm內存不足。 我見過很多次了。 嘗試:
還要確保您的系統內存不足。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.