虚拟机

1.jit:如果有一段代码会多次执行,java会有使用热替换技术,将这段代码编译成为机器代码,这样,可以极大提高执行速度。但是热编译是需要时间的,所以不能无节制的使用,所以可以使用-xx:CompileThreshold来设置次数上线,也就是会执行的次数达到了这个限制,才会进行热替换。

2.可以通过vm查看线程内存磁盘的运行情况。针对性的进行代码优化。

3.Gc 的问题。一个是次数太多,一般是内存泄露。比如:threadlocal 。一个是停顿时间太长,使用了不合理的垃圾回收器。还有一个是大小分配不正确。这个需要计算活跃数据。

原文地址:https://www.cnblogs.com/cat-and-water/p/6549861.html