java 获取jvm运行状态

在项目收集jvm运行状态信息并上传到监控平台是必要的,这样有利于我们分析服务器的运行情况,好让我们对一些潜在的威胁采取相关措施。

首先要了解到ManagementFactory这个类,它是java.lang.Object包下的
java.lang.management.ManagementFactory类。

它是ManagementFactory 类是一种工厂类,用于获取 Java 平台的管理 Bean。此类由静态方法组成,每种静态方法都会返回一个或多个表示 Java 虚拟机组件的管理接口的平台 MXBean。

各种MXBean:
这里写图片描述

这里我们想要获得jvm运行的参数需使用RuntimeMXBean类
RuntimeMXBean的各种方法如下:
这里写图片描述

代码如下:

JVM实体类
public class  JVMInfo implements Serializable(){
   

  private static final long serialVersionUID = 7593745554626593803L;

    /**
     * JVM 启动时间
     */
    private String jvmStartTime;
    /**
     * JVM 版本信息
     */
    private String jvmVersion;
    /**
     * jvm名称
     */
    private String jvmName;
    /**
     * 当前线程ID
     */
    private String processId;
    /**
     * 非堆内存使用情况(MB)
     */
    private MemoryUsageMB nonHeapMemoryUsage;
    /**
     * 堆内存使用情况(MB)
     */
    private MemoryUsageMB heapMemoryUsage;
    
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
JVM Profiler是一种用于监测和分析Java虚拟机(JVM运行时性能的工具。它可以通过收集和分析JVM运行时信息来帮助开发人员识别和解决性能问题。JVM Profiler可以通过使用JVM Agent来实现,JVM Agent是一种通过在JVM启动时加载的方式来修改JVM行为的工具。通过JVM Agent,JVM Profiler可以获取程序运行时的信息,如方法调用、内存使用情况、线程状态等。这些信息可以用于分析程序的性能瓶颈,并进行优化。一种常见的使用方式是通过命令行调用JAR文件来运行JVM Profiler,并指定相应的参数和报告器。例如,可以使用以下命令来运行JVM Profiler并将结果输出到控制台:java -javaagent:target/jvm-profiler-0.0.5.jar=reporter=com.uber.profiling.reporters.ConsoleOutputReporter -cp target/jvm-profiler-0.0.5.jar com.uber.profiling.examples.HelloWorldApplication。此外,JVM Profiler还可以使用JVMTI(JVM Tool Interface)来实现,JVMTI是JVM提供的一套标准的C/C++编程接口,用于实现Debugger、Profiler、Monitor、Thread Analyzer等工具。通过JVMTI,开发人员可以编写自定义的JVM Profiler来满足特定的需求。 #### 引用[.reference_title] - *1* *3* [JVM CPU Profiler技术原理及源码深度解析](https://blog.csdn.net/weixin_45678149/article/details/130775520)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [JVM Profiler介绍](https://blog.csdn.net/weixin_33676492/article/details/89589464)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值