登录 |  注册
首页 >  服务器/安全 >  Tomcat容器 从入门到精通学习笔记 >  JVM 调优诊断工具JVisualVM

JVM 调优诊断工具JVisualVM

JVM监控工具VisualVM:jvisualvm.exe

VisualVM 是Netbeans的profile子项目,已在JDK6.0 update 7 中自带(java启动时不需要特定参数,监控工具在bin/jvisualvm.exe),能够监控线程,内存情况,查看方法的CPU时间和内存中的对 象,已被GC的对象,反向查看分配的堆栈(如100个String对象分别由哪几个对象分配出来的)。

在JDK_HOME/bin(默认是C:\Program Files\Java\jdk1.7.0_79\bin)目录下面,有一个jvisualvm.exe文件,双击打开,从UI上来看,这个软件是基于NetBeans开发的了。

javajvm.jpg

双击启动(或者cmd窗口输入jvisualvm,回车启动)

C:\Program Files\Java\jdk1.7.0_79\bin>jvisualvm

visualjvm.jpg

从界面上看还是比较简洁的,左边是树形结构,自动显示当前本机所运行的Java程序,还可以添加远程的Java VM,其中括号里面的PID指的是进程ID。OverView界面显示VM启动参数以及该VM对应的一些属性。Monitor界面则是监控Java堆大小,Permgen大小,Classes和线程数量。Profiler界面比较有趣,看样子似乎可以动态的对某个Java程序进行调优了。不过我没试用这个功能,感觉要调优还是在Netbeans里面比较自然一点,起码有代码,没代码调优了用处也不大。而且这里还有个问题,有些VM是没有Threads跟Profiler界面的,不知道是什么原因,像我截图里面的Weblogic的Server就没有这两个界面。

Sun VisualVM项目 开源Java问题解决方案

VisualVM是Sun的一个OpenJDK项目,其目的在于为Java应用创建一个整套的问题解决工具。该工具由几个现有工具和新增功能合并而成的(如jvmstat、JMX、Attach API等)构成。VisualVM可以作为独立应用运行,或者通过其良好的API进行扩展。

在Java SE for Business的特性和优势页面上,VisualVM被描述为可以胜任如下任务的工具:

比以往任何时候都更快更容易地在已部署的应用中追踪导致可靠性、可用性或者可扩展性问题的根源。

根据VisualVM项目站点所述:

该工具的设计目标就是既可以在产品环境下使用,也可以在开发阶段使用,并且进一步加强了对Java SE平台的监控能力和性能分析能力。

一些特性列举如下:

  • 分析

  • Thread Dump

  • Heap Dump

  • 分析快照

  • 应用快照

当被问到针对其他版本JDK的特性的完善计划时,Thomas Hurka说到:

VisualVM使用了不同的技术以从JDK(jvmstat、JMX、Attach AP及Serviceablity agent)中取得数据。如果某项技术在特定的JDK或者操作系统上不可用,那么依赖于这些技术的VisualVM特性也将不可用。

此外,VisualVM是“可插拔的”。它含有几个插件使其能够监控、管理和修复部署在GlassFish上的应用,同时还有其他的插件使其能轻松地与NetBeans(nbproject插件)API协同工作。

上一篇: 将Tomcat注册成windows系统服务(详细操作)
下一篇: VisualVM 离线安装VisualGC插件
推荐文章
  • Java内存模型(JavaMemoryModel,JMM)是Java语言规范的一部分,它定义了Java虚拟机(JVM)如何管理和协调各个线程之间的共享数据访问行为,旨在解决由于多线程环境下的数据可见性、原子性和有序性问题。理解和掌握JMM是编写高效、正确并发程序的关键。一、Java内存模型概述JMM
  • 为什么要设置静态IP在安装好CentOS虚拟机以后,一般我们会通过Xshell连接到虚拟机,而不是直接使用虚拟机里面的终端(Terminal)输入命令。如果使用默认的动态分配IP,虚拟机每次开机以后IP都会改变,Xshell连接需要修改IP。所以我们需要将IP设置成静态IP,只要虚拟机开机即可连接。
  • 使用centos的wget提示:commondnotfound是因为没有安装wget这个指令安装wgetyum -y install wget
  • 一、因为Centos官网是挂在国外的服务器上,下载镜像时相比于国内的下载速度会慢很多,所以在这里向大家分享两个国内的镜像站去下载Centos镜像。二、前往阿里云镜像站下载Centos7镜像1、阿里云官网地址:https://www.aliyun.com/ 2、点击左上角的【文档与社区】展开选择【镜像
  • 现在不管安防工程还是弱电工程,与网络的联系也越来越密切了,网络基础知识中的网络命令ping命令在项目中是使用频率最高的,一般我们用的都是它的基本功能,今天和大家来详细看下Ping命令的7个基础用法,掌握了秒变大神!1、ping命令基础2、ping-t的使用3、ping-a的使用4、ping-n的使用
  • 总结下工作中遇到的GC问题。一、JVM参数设置不当机器4G,部分JVM参数设置-Xmx3296m -Xms3296m -Xss256k -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m -XX:MaxGCPauseMillis=200 -XX:+Use
学习大纲