jdk自带监控程序jvisualvm的使用
编辑应用所在的tomcat服务器下的bin目录下的catalina.sh文件,修改如下: 配置如下内容: 红字内容需要进行添加,黄色背景的需要根据具体的主机情况配置。 进入到本地的jdk安装目录下,找到jvisualvm.exe,双击打开 建立远程连接 图一 添加远程 图二 建立远程主机ip 图三 添加jmx连接 图四 双击建立好的连接可以实时查看当前程序的运行状况和堆栈信息等 图一 概述:显示当前tomcat服务器的整体运行状况 图二:可事实动态显示cpu、堆栈、类、线程的相关信息 图三:线程:可实时动态的显示进程的使用状况 点击线程Dump按钮可以显示具体的进程的内容,可从此页面查看到进程的具体信息以及报错信息 (4)通过此工具的使用,当ITSM系统僵死时,可看到明显的进程变化 a.所有的请求进程都进入了监控状态,所有请求都无法访问 通过上述分析,查看连接池配置,对连接池的活动连接数和空闲连接数做了调账,如下图: 同时找到对应的sql语句进行优化,之前的sql存在笛卡尔积,同时数据量大,没有建立索引,通过dba的分析修改了sql语句,并对timeouttime字段建立索引,截图如下(包含原有sql【被注释了】) Jdk自带的监控小工具可用来对java程序进行调优和问题分析。 应用僵死后是否有dump或javacore文件生成?拿到后用MemoryAnalyzer 等工具分析一下