zoukankan      html  css  js  c++  java
  • Jconsole使用实例解说

    Jconsole是jdk自带的一套java虚拟机执行状况监视器,它能够用来监控虚拟机的内存,线程,cpu使用情况以及相关的java进程相关的MBean,主界面例如以下:


    图1

    怎样连接被监控的Java虚拟机:

    1. 设置被监控的Java虚拟机启动的參数,一般的情况下,会有下面三个參数,各自是:

    -Dcom.sun.management.jmxremote.port=1090 

    -Dcom.sun.management.jmxremote.ssl=false 

    -Dcom.sun.management.jmxremote.authenticate=false

    在Eclipse中,例如以下图所看到的:


    图2

    被监控的虚拟机启动以后,我们就能够其他电脑上通Jconsole进行远程连接。

    连接的过程例如以下:

    1.打开cmd,输入jconsole,就会出现jconsole控制台,例如以下所看到的:


    图3

    然后,我们输入要被监控的Java虚拟机的IP地址和port号,如果输入正确,连接button就上生效如果设计的监控port号为12345,连接的IP为:10.72.35.130,例如以下图所看到的:


    图4

    点击连接后,就会进入到图1,说明就连接成功了。

    在概览这个Tab中,主要监控是的虚拟机的堆内存、线程、类以及cpu占用率;

    在内存Tab中,能够选择监控的内存对象,堆内存、非堆内存、PS Eden Space、PS Survivor Space、PS Old Gen、Code Cache、PS Per Gen 当然这里监控的是Parallel Scovage算法的虚拟,假设是收集器是其他算法,可能显示的名称会有不一样,但本质上是一样的,这个有兴趣的自己能够去试试 。

    像线程Lab、类Lab、VM概要Lab在这里就不作过多的介绍,以下重点说一下MBean这个Label

    注冊到JMX代理的平台或者应用的MBeans,能够通过MBeans标签获取。比如,内存的MBeans如以下定义:

    public interface MemoryMXBean {       
     	public MemoryUsage getHeapMemoryUsage();      
    	public MemoryUsage getNonHeapMemoryUsage();       
    	public int getObjectPendingFinalizationCount();      
     	public boolean     isVerbose();       
    	public void        setVerbose(boolean value);      
    	public void        gc();  
    }
    内存的MBean包含四个属性:   

       HeapMemoryUsage. 用于描写叙述当前堆内存使用情况的仅仅读属性   

       NonHeapMemoryUsage. 用于描写叙述当前的非堆内存的使用情况的仅仅读属性  

       ObjectPendingFinalizationCount.用于描写叙述有多少对象被挂起以便回收。  

       Verbose.用于动态设置GC是否跟着具体的堆栈信息,为一个布尔变量  内存的MBean支持一个操作——GC,此操作能够发送进行实时的垃圾回收请求
     

    MBean 标签   左边的树形结构以名字的方式展示了全部MBeans的列表。一个MBean对象的名字由一个域的名字和一串keyword属性组成。比如,JVM的平台的MBeans是在“java.lang”域下的一组,而日志的MBeans则在"java.util.logging"域下。MBean对象的名字在javax.management.ObjectName 规范中定义。  
    当你在树中选中一个MBean,属性,操作,或者通知等一些信息会再右边显示出来。假设属性是可写的(属性被标志为蓝色),你能够进行设置。


    MBean 操作  你能够操作在”操作”节点中列出的操作。


    MBean 通知  你也能够看到由MBean发送出来的通知:默认情况,假设你不订阅通知的话,JConsole不会收到MBean发生过来的通知。你能够点击"订阅"button来堆通知进行定义,而使用"末订阅"button来取消订阅   4、监控内存   内存标签页通过读取内存系统、内存池、垃圾回收的MBean来获取对内存消耗、内存池、垃圾回收的情况的统计。

  • 相关阅读:
    SQL慢查询安装过程
    grafana + influxdb + telegraf , 构建性能监控平台
    JDK安装、java环境配置
    多源最短路Floyd 算法————matlab实现
    单源最短路Dijkstra算法——matlab实现
    Layout基本属性总结
    Scrollview中嵌套ListView(自定义组件解决)
    SQL 一列拆分多行
    C# 在异步中使用HttpWebRequest出现的“正在终止线程”错误的解决方案
    sqlserver中分区函数 partition by与 group by 区别 删除关键字段重复列
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4490569.html
Copyright © 2011-2022 走看看