當在Debian系統上遇到Java內存溢出(OutOfMemoryError)時,可以采取以下步驟進行排查和解決:
jmap
命令獲取堆快照:jmap -dump:format=b,file=heapdump.hprof <Java進程ID>
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/path/to/dump
java -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/path/to/gc.log YourMainClass
-Xmx<size> # 設置最大堆內存
-Xms<size> # 設置初始堆內存
java -Xss<size> YourMainClass
ByteBuffer
)減少 GC 壓力:ByteBuffer buffer = ByteBuffer.allocateDirect(100 * 1024 * 1024);
通過以上步驟,可以有效地排查和解決Debian系統上Java應用的內存溢出問題。