通过jmx可以监控vm内存使用,系统内存使用等,以下是网上某博客代码,特点是通过window和linux命令获得CPU使用率

利用java程序实现获取计算机cpu利用率和内存使用信息。

package com.amgkaka.performance;   

   
/** *//**  
 * 监视信息的JavaBean类.  
 * @author  amg  
 * @version 1.0   
 * Creation date: 2008-4-25 - 上午10:37:00  
 */  
public class MonitorInfoBean {   
    /** *//** 可使用内存. */  
    private long totalMemory;   
        
    /** *//** 剩余内存. */  
    private long freeMemory;   
        
    /** *//** 最大可使用内存. */  
    private long maxMemory;   
        
    /** *//** <a href="https://www.baidu.com/s?wd=%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YYmhN-mHIWuWPhrHDYnyR40ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPHczPWTsPjn1rHDkPWTsrjfd" target="_blank" class="baidu-highlight">操作系统</a>. */  
    private String osName;   
        
    /** *//** 总的<a href="https://www.baidu.com/s?wd=%E7%89%A9%E7%90%86%E5%86%85%E5%AD%98&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YYmhN-mHIWuWPhrHDYnyR40ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPHczPWTsPjn1rHDkPWTsrjfd" target="_blank" class="baidu-highlight">物理内存</a>. */  
    private long totalMemorySize;   
        
    /** *//** 剩余的<a href="https://www.baidu.com/s?wd=%E7%89%A9%E7%90%86%E5%86%85%E5%AD%98&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YYmhN-mHIWuWPhrHDYnyR40ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPHczPWTsPjn1rHDkPWTsrjfd" target="_blank" class="baidu-highlight">物理内存</a>. */  
    private long freePhysicalMemorySize;   
        
    /** *//** 已使用的<a href="https://www.baidu.com/s?wd=%E7%89%A9%E7%90%86%E5%86%85%E5%AD%98&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YYmhN-mHIWuWPhrHDYnyR40ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPHczPWTsPjn1rHDkPWTsrjfd" target="_blank" class="baidu-highlight">物理内存</a>. */  
    private long usedMemory;   
        
    /** *//** 线程总数. */  
    private int totalThread;   
        
    /** *//** <a href="https://www.baidu.com/s?wd=cpu%E4%BD%BF%E7%94%A8%E7%8E%87&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YYmhN-mHIWuWPhrHDYnyR40ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPHczPWTsPjn1rHDkPWTsrjfd" target="_blank" class="baidu-highlight">cpu使用率</a>. */  
    private double cpuRatio;   
   
    public long getFreeMemory() {   
        return freeMemory;   
    }   
   
    public void setFreeMemory(long freeMemory) {   
        this.freeMemory = freeMemory;   
    }   
   
    public long getFreePhysicalMemorySize() {   
        return freePhysicalMemorySize;   
    }   
   
    public void setFreePhysicalMemorySize(long freePhysicalMemorySize) {   
        this.freePhysicalMemorySize = freePhysicalMemorySize;   
    }   
   
    public long getMaxMemory() {   
        return maxMemory;   
    }   
   
    public void setMaxMemory(long maxMemory) {   
        this.maxMemory = maxMemory;   
    }   
   
    public String getOsName() {   
        return osName;   
    }   
   
    public void setOsName(String osName) {   
        this.osName = osName;   
    }   
   
    public long getTotalMemory() {   
        return totalMemory;   
    }   
   
    public void setTotalMemory(long totalMemory) {   
        this.totalMemory = totalMemory;   
    }   
   
    public long getTotalMemorySize() {   
        return totalMemorySize;   
    }   
   
    public void setTotalMemorySize(long totalMemorySize) {   
        this.totalMemorySize = totalMemorySize;   
    }   
   
    public int getTotalThread() {   
        return totalThread;   
    }   
   
    public void setTotalThread(int totalThread) {   
        this.totalThread = totalThread;   
    }   
   
    public long getUsedMemory() {   
        return usedMemory;   
    }   
   
    public void setUsedMemory(long usedMemory) {   
        this.usedMemory = usedMemory;   
    }   
   
    public double getCpuRatio() {   
        return cpuRatio;   
    }   
   
    public void setCpuRatio(double cpuRatio) {   
        this.cpuRatio = cpuRatio;   
    }   
}

java怎样获取CPU占用率和硬盘占用率的更多相关文章

  1. Golang获取CPU、内存、硬盘使用率

    Golang获取CPU.内存.硬盘使用率 工具包 go get github.com/shirou/gopsutil 实现 func GetCpuPercent() float64 { percent ...

  2. python 获取cpu、内存、硬盘等实时信息 psutil

    psutil是一个跨平台库,能够轻松实现获取系统运行的进程和系统利用率(CPU,内存,磁盘,网络等)信息,主要应用于系统监控,分析和限制系统资源及进程的管理,它实现了同等命令行工具提供的功能,如ps, ...

  3. java获取cpu、内存、硬盘信息[转]

    http://m.oschina.net/blog/312911 1 下载安装sigar-1.6.4.zip 使用java自带的包获取系统数据,容易找不到包,尤其是内存信息不够准确,所以选择使用sig ...

  4. spark docker java kubernetes 获取cpu内核/线程数问题

    升级服务从spark2.3.0-hadoop2.8 至 spark2.4.0 hadoop3.0 一日后导致spark streaming kafka消费数据积压 服务不是传统的部署在yarn上,而是 ...

  5. Atitit. 获取cpu占有率的 java c# .net php node.js的实现

    Atitit. 获取cpu占有率的 java c# .net php node.js的实现 通过wmic接口获取cpu占有率 C:\Users\Administrator.ATTILAXPC188&g ...

  6. Linux下使用java获取cpu、内存使用率

    原文地址:http://www.voidcn.com/article/p-yehrvmep-uo.html 思路如下:Linux系统中可以用top命令查看进程使用CPU和内存情况,通过Runtime类 ...

  7. [No0000112]ComputerInfo,C#获取计算机信息(cpu使用率,内存占用率,硬盘,网络信息)

    github地址:https://github.com/charygao/SmsComputerMonitor 软件用于实时监控当前系统资源等情况,并调用接口,当资源被超额占用时,发送警报到个人手机: ...

  8. C#获取CPU占用率、内存占用、磁盘占用、进程信息

    代码: using System; using System.Collections.Generic; using System.Diagnostics; using System.Threading ...

  9. Java如何获取系统cpu、内存、硬盘信息

    1 概述 前段时间摸索在Java中怎么获取系统信息包括cpu.内存.硬盘信息等,刚开始使用Java自带的包进行获取,但这样获取的内存信息不够准确并且容易出现找不到相应包等错误,所以后面使用sigar插 ...

随机推荐

  1. python的命名空间

    Python的命名空间是Python程序猿必须了解的内容,对Python命名空间的学习,将使我们在本质上掌握一些Python中的琐碎的规则. 接下来我将分四部分揭示Python命名空间的本质:一.命名 ...

  2. OAuth2.0学习(1-8) 授权方式五之Access_Token令牌过期更新

    OAuth2.0的Access_Token令牌过期更新 如果用户访问的时候,客户端的"访问令牌"已经过期,则需要使用"更新令牌"申请一个新的访问令牌. 客户端发 ...

  3. 记java应用linux服务单个CPU使用率100%分析

    之前在做项目的过程中,项目完成后在linux服务器上做性能测试,当服务跑起来的时候发现cpu使用率很奇怪,java应用把单个cpu跑满了,其他cpu利用率0%. 刚开始遇到这问题的时候我第一时间反应使 ...

  4. Maven的作用是什么

    现在我们开发的项目基本上都是maven项目,maven项目也是一个项目,类似于javaProject,javaWebProject,就是多了些功能. 那就说说究竟多了什么功能呢. 1 . 帮你下载ja ...

  5. Ajax.html:35 [Deprecation] Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org

    AJAX的容易错误的地方 Ajax.html:35 [Deprecation] Synchronous XMLHttpRequest on the main thread is deprecated ...

  6. JAVA数据库编程、JAVA XML解析技术

    JDBC概述 JDBC是JAVA中提供的数据库编程API curd :数据库增删改 链接字符串:String url = "mysql :/localhost :3306/jdbc/&quo ...

  7. Apache Spark Jobs 性能调优

    当你开始编写 Apache Spark 代码或者浏览公开的 API 的时候,你会遇到各种各样术语,比如transformation,action,RDD(resilient distributed d ...

  8. 最新版Charles破解方法(Mac+Windows).md

    Charles 破解 去网站 http://charles.iiilab.com/ 下载相对应的版本 下载破解文件 charles.jar http://charles.iiilab.com/ 替换掉 ...

  9. Java并发编程之Lock

    重入锁ReentrantLock 可以代替synchronized, 但synchronized更灵活. 但是, 必须必须必须要手动释放锁. try { lock.lock(); } finally ...

  10. Linux服务器断电导致挂载及xfs文件损坏的修复方法

    系统文件损坏后进入紧急修复模式,无法进行维护工作 welcome to emergency mode!after logging in ,type "journalctl -xb" ...