java虚拟机
文章平均质量分 62
涵盖jvm监控相关的内容
老朱.
业余时间喜欢写点技术博客,读点无用之书。想阅读我更多原创的非技术类文章,可以关注我的公众号 老朱的读书随想
展开
-
如何使用VisualVM分析java快照
当我们遇到一些java运行期间的疑难问题时,比如占用内存过大或假死等现象,往往想到的是dump一个快照出来分析一下。今天用一个最简单的例子来分享一下我分析java快照的方法。代码实例我喜欢用最简单的分析问题,太复杂的代码有太多噪音。下面是一些非常简单的代码。package com.example;public class UserInfo { private String name; private String role; private int age;原创 2021-10-12 16:00:17 · 1435 阅读 · 0 评论 -
jinfo的用法
jinfo命令比较简单,主要是用来查看和调整一些开关类的参数。使用方法如下:jinfo -flag :打印对应的启动参数的值jinfo -flag [+/-] :启用或禁用对应的启动参数jinfo -flag = :设置对应的启动参数的值使用场景举例:假设有一个java应用出问题了,你登上服务器想看看GC日志是否正常,结果发现java进程启动的时候没有开启PrintGC的开关,你可以通过下面的命令打开这个开关jinfo -flag +PrintGC <pid>如果没有原创 2021-10-12 15:43:32 · 1859 阅读 · 0 评论 -
jstat的主要用法
jstat主要用来查看当前java进程的各内存区域的使用情况以及GC的次数和总耗时。我最常用的是下面的命令:jstat -gcutil <pid> [interval] [times]可以用[interval]来控制每隔多少毫秒重复输出一次,并通过[times]参数来控制输出的总次数。这两个参数都是可以省略的,如果都省略的话,就只输出一次。下面举例说明以下,输出pid=53560的java进程的内存各区域的利用率,每隔1000毫秒输出一次,共输出五次。$ jstat -gcutil 5原创 2021-10-12 15:41:19 · 2561 阅读 · 0 评论 -
常见的GC算法介绍
本文涵盖几种常用的垃圾回收算法的简单介绍,包括:标记清除算法(Mark-Sweep)复制算法(Copying)标记压缩算法(Mark-Compact)分代算法(GenerationalCollecting)分区算法(Region)内容和截图全部来自《实战Java虚拟机:JVM故障诊断与性能优化(第2版)》标记清除算法(Mark-Sweep)标记清除法是现代垃圾回收算法的思想基础。标记清除法将垃圾回收分为两个阶段:标记阶段和清除阶段。在标记阶段,首先通过根节点标记所有从根节点开始的可达对原创 2021-10-09 18:14:50 · 414 阅读 · 0 评论 -
JVM常用参数的介绍
本文将分门别类地介绍一些常用的JVM的参数,包括:内存相关参数显示GC日志的参数类加载的相关参数显示启动参数的参数内存相关参数堆空间的配置-Xmx 指定堆内存的最大空间,设置方式:-Xmx<value>-Xms 指定堆内存的初始空间,设置方式:-Xms<value>oracle官方推荐将初始堆Xms与最大堆Xmx设置为相等。这样的好处是,可以减少程序运行时进行垃圾回收的次数,同时也减少了虚拟机需要做出决策的数量,这些可以提高程序的性能。我的经验是,如果ja原创 2021-10-08 17:03:58 · 533 阅读 · 0 评论 -
通过jstack分析java进程耗费CPU的原因
1、通过jps -l来找到需要跟踪的java进程的pid,下面使用$PID来标识# jps -l27544 org.logstash.Logstash16620 demo.CpuUsage16639 sun.tools.jps.Jps2、通过top -p $PID -H来跟踪该进程的top -p 16620 -H可以发现16621的CPU利用率达到了65.2%top - 17:...原创 2019-07-04 17:49:33 · 1313 阅读 · 0 评论 -
jvm内存的各个区域用途介绍
本篇涵盖一下内容jvm内存区域的用途介绍如何判断对象是否已死(回收哪些对象)常见的回收算法和策略相关的jvm参数介绍jvm内存区域的用途介绍java虚拟机在执行java程序时会把它管理的内存划分为不同的区域,每个区域有不同的用途。该图片来源于网络。以下是各区域的简单介绍程序计数器:是线程在执行字节码的行号指示器,条件、循环、跳转、异常处理等字节码指令都依赖这个计数器。每个线...原创 2019-05-08 10:43:13 · 275 阅读 · 0 评论