linux java tomcat mysql 在线应用
4cpu.
连接有200左右. top 发现
java 经常cpu 占用高达100%-700%(4 cpu )
mysql 有时候cpu 占用高达99%. 2者内存占用正常都不到80%
16g内存物理内存使用率为15/16 , swap 空间没有使用.
这里直觉是java的问题 , 内存正常不大像内存泄露.
如何能进一步分析java或mysql cpu 占用高的原因 (使用什么工具能看java运行thread)?
------解决方案--------------------
JAVA占用有些高.
是不是时常垃圾回收闹的?
可以用jprofile看看哪个方法占CPU高.
------解决方案--------------------
2L的建议不错
------解决方案--------------------
装个jrmc jdk,然后装个监控端。就可以监控jdk运行状态了。类似jprofile。
另外合理的添加日志也会有所帮助。
------解决方案--------------------
用jdk自带的VisualVM看看哪里出现了cpu或者内存占用非常高的情况,很好用。在jdk的bin下面。