在处理问题之前需要收集数据,下面是收集数据的方式:
- Enable core files:如果java崩溃了,OS保存core文件到磁盘。注意类Linux需要运行命令"ulimit -c unlimited"
2.添加"-XX:+HeapDumpOnOutOfMemoryError"到启动参数。可以使用jhat 工具进行文件内容查看问题原因。
3.运行java飞行记录:这个JFR是商业功能,需要有商业license
4.在jvm命令行添加 -verbosegc。这个标记的作用是打印Java垃圾收集器日志的基本信息。这个日志帮助你找到下面的信息:
- 垃圾收集了运行时长。
- 空闲内存减少时间
5.打印java版本和JVM参数。在命令行添加 -XX+PrintCommandLineFlags、-showversion
6.建立JMC JMX 远程监控。使用远程工具监控VM。
更多的详细信息,可以参考 jcmd
上面的内容参考自JDK 1.8帮助文档。
顺便分享win10截图快捷键:Win+shift+s