线上排查、性能优化等概念也是面试过程中的“常客”,而对于线上遇到的“疑难杂症”,需要通过理性的思维去分析问题、排查问题、定位问题、解决问题,同时,如果解决掉所遇到的问题或瓶颈后,也可以在能力范围之内尝试最优解以及适当考虑拓展性。
运行时性能问题的首要指标之一是来自 JVM 分析器或 Java 监控工具的高 Java CPU 使用率报告。像这样的小改动会对应用程序性能产生重大影响,尤其是在涉及加密、图形操作或其他 CPU 密集型操作的情况下。
pidstat -p 866 -u -t 1 3 -> 查找占用cpu较高线程id 2109。jstack -F -l 2109 >> /home/work/zhibi/jstack_2109_83d.txt -> Thread 2109: cpu 98% 发现有死锁。
原文链接:见原文链接。JVM——Java虚拟机,它是Java实现平台无关性的基石。Java程序运行的时候,编译器将Java文件编译成平台无关的Java字节码文件,接下来对应平台JVM对字节码文件进行解释,翻译成对应平台匹配的机器指令并运行。