1. 什麼是java mp文件 怎麼生成
java mp heap 是分配給實例類和數組對象運行數據區,所有java線程在運行期間共享heap中的數據。Java heap mp相當於java應用在運行的時候在某個時間點上打了個快照(snapshot)。
有java mp文件生成的方式如下:
1.使用$JAVA_HOME/bin/jmap -mp來觸發,eg:jmap -mp:format=b,file=/home/longhao/heammp.out
2.使用$JAVA_HOME/bin/jcosole中的MBean,到MBean>com.sun.management>HotSpotDiagnostic>操作>mpHeap中,點擊 mpHeap按鈕。生成的mp文件在java應用的根目錄下面。
3.在應用啟動時配置相關的參數 -XX:+HeapDumpOnOutOfMemoryError,當應用拋出OutOfMemoryError時生成mp文件。
4.使用hprof。啟動虛擬機加入-Xrunhprof:head=site,會生成java.hprof.txt文件。該配置會導致jvm運行非常的慢,不適合生產環境。
2. 宕機的時候,java mp 是什麼東西這句話又是什麼意思
對於大型 java 應用程序來說,再精細的測試都難以堵住所有的漏洞,即便我們在測試階段進行了大量卓有成效的工作,很多問題還是會在生產環境下暴露出來,並且很難在測試環境中進行重現。JVM 能夠記錄下問題發生時系統的運行狀態並將其存儲在轉儲(mp)文件中,從而為我們分析和診斷問題提供了重要的依據。常見的轉儲文件包括 Java Dump, Heap mp 和 System mp。