zoukankan      html  css  js  c++  java
  • 《深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)》- 4.3.2 JConsole:Java监视与管理控制台 (笔记随录)

    写该篇文章,主要是方便自己github的笔记引用图片(虽然网页版好像图片显示不出来,但是我自己都是clone下来后编辑的,所以没差)。
    写该篇文章,主要是方便自己github的笔记引用图片(虽然网页版好像图片显示不出来,但是我自己都是clone下来后编辑的,所以没差)。
    写该篇文章,主要是方便自己github的笔记引用图片(虽然网页版好像图片显示不出来,但是我自己都是clone下来后编辑的,所以没差)。

    JConsole(Java Monitoring and Management Console)是一款基于JMX(Java Management Extensions)的可视化监视、管理工具。它的主要功能是通过JMX的MBean(Managed Bean)对系统进行信息收集和参数动态调整。JMX是一种开放性的技术,不仅可以用在虚拟机本身的管理上,还可以运行于虚拟机之上的软件中,典型的如中间件大多也基于JMX来实现管理与监控。虚拟机对JMXMBean的访问也是完全开放的,可以使用代码调用API、支持JMX协议的管理控制台,或者其他符合JMX规范的软件进行访问。

    1. JConsole的界面如下:

    2. 启动一个java进程,用JConsole监听

    下面代码来自书籍,启动时指定虚拟机参数-Xms100m -Xmx100m -XX:+UseSerialGC

    import java.util.ArrayList;
    import java.util.List;
    
    public class JConsoleTestCase {
    
        /**
         * 内存占位符对象,一个OOMObject大约占64K
         */
        static class OOMObject {
            public byte[] placeholder = new byte[64 * 1024];
        }
    
        public static void fillHeap(int num) throws InterruptedException {
            List<OOMObject> list = new ArrayList<OOMObject>();
            for (int i = 0; i < num; i++) {
                // 稍作延时,令监视曲线的变化更加明显
                Thread.sleep(50);
                list.add(new OOMObject());
            }
            System.gc();
        }
    
        public static void main(String[] args) throws Exception {
            fillHeap(1000);
        }
    
    }
    

    (Ashiamd的github个人学习笔记)[https://ashiamd.github.io/docsify-notes/#/README] ~小尾巴~
  • 相关阅读:
    自动化运维工具Ansible
    svn服务
    关于nagios系统下使用shell脚本自定义监控插件的编写以及没有实时监控图的问题
    企业级监控nagios实践
    centos6 下FastDFS 在storage节点上nginx的fastdfs-nginx-module 模块编译出现的问题
    分布式文件系统FastDFS
    运维的各个阶段
    用php做一个简单的注册用户功能
    ttttttttttt
    exclude和include当中/**和/*区别
  • 原文地址:https://www.cnblogs.com/Ashiamd/p/14059108.html
Copyright © 2011-2022 走看看