美文网首页
Java之 Jconsole的使用

Java之 Jconsole的使用

作者: 五月笙 | 来源:发表于2024-08-07 09:21 被阅读0次

使用

之前分享过JVM的基础结构以及如果Jconsole去直观的去查看,现在我们更细的了解一个Jconsole的监控案例。

        BigInteger[] pArr = new BigInteger[30000];
        pArr[0] = new BigInteger("0");
        pArr[1] = new BigInteger("1");
        for (int i = 2; i < 30000; i++) {
            pArr[i] = pArr[i - 1].add(pArr[i - 2]);
            try {
                Thread.sleep(100);
            } catch (InterruptedException e) {
                e.printStackTrace();

            }
            System.out.println("第" + i + ":" + pArr[i]);
        }
process_class.png process_code_cache.png process_compressed_class.png process_eden_space.png process_jvm.png process_metaspace.png process_old_generation.png process_profile.png process_survivor_space.png process_thread.png

问题

一次次的堆内存使用量为什么有较大幅度的变化?

Old Genarition 现象能说明什么?

Eden Space 为什么会越往后越密集?

Survivor Space 为什么会下降?

修改

        BigInteger temp1 = new BigInteger("0");
        BigInteger temp2 = new BigInteger("1");
        BigInteger temp3 = new BigInteger("0");
        for (int i = 2; i < 10000; i++) {
            temp3 = temp2;
            temp2 = temp1.add(temp2);
            temp1 = temp3;
            try {
                Thread.sleep(5);
            } catch (Exception e) {
            }
            System.out.println("第" + i + ":" + temp2);
        }

参考

Jconsole—JVM监控性能的利器(1 本地监控)
jconsole工具使用
使用jconsole分析内存情况-JVM

相关文章

网友评论

      本文标题:Java之 Jconsole的使用

      本文链接:https://www.haomeiwen.com/subject/swmmnktx.html