读取服务器内存信息工具,使用Sigar获取服务器内存、IP、CPU、IO、MAC地址、操作系统等信息......

sigar linux 文件和windows文件和sigar的jar包

链接: https://pan.baidu.com/s/1bGrupzmaOAjLEUE0gp6DmA 提取码: gj31

工具类

import com.sun.management.OperatingSystemMXBean;

import org.hyperic.sigar.*;

import java.io.BufferedReader;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStreamReader;

import java.lang.management.ManagementFactory;

import java.math.BigDecimal;

import java.net.InetAddress;

import java.net.NetworkInterface;

import java.net.SocketException;

import java.text.DecimalFormat;

import java.util.Enumeration;

import java.util.HashMap;

import java.util.Map;

import java.util.StringTokenizer;

public class MachineUtils {

private static String osName = System.getProperty("os.name");

/***

* 获取cpu平均值使用率

*/

public static Double getCPURate() {

Double CPURate = 0.0;

Double CPURate1 = 0.0;

try {

Sigar sigar = new Sigar();

CpuInfo infos[] = new CpuInfo[0];

infos = sigar.getCpuInfoList();

CpuPerc cpuList[] = null;

cpuList = sigar.getCpuPercList();

for (int i = 0; i < infos.length; i++) {// 不管是单块CPU还是多CPU都适用

CpuInfo info = infos[i];

CPURate += cpuList[i].getCombined();

}

CPURate1 = CPURate / infos.length;

} catch (SigarException e) {

e.printStackTrace();

}

CPURate1 = (double) Math.round(CPURate1 * 100);

return CPURate1;

}

/***

* 获取内存使用率

*/

public static String Memory(){

if (osName.toLowerCase().contains("windows") || osName.toLowerCase().contains("win")) {

String memory = getMemery();

return memory;

} else {

String memory = getMemUsage()+"";

return memory;

}

}

/**

* 获取windows内存使用率

*/

public static String getMemery() {

String format = "";

try {

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值