1 Star 1 Fork 1

mfq1020 / sigar-system_runtime

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

java利用sigar.jar获取服务器运行时CPU、内存、网络等信息

详细使用帮助:http://www.i3geek.com/archives/1184

介绍

利用java程序检查服务器或主机的运行时信息,包括操作系统、CPU使用情况、内存使用情况、硬盘使用情况以及网卡、网络信息。主要的办法有两种:第一种,使用jdk1.6以上自动的功能,实现数据的获取,但是该方法局限性较大,而且获得的数据也比较少,尤其是内存信息不够准确。所以,在此不讨论该方法。第二种,使用第三方的jar包进行获取,通过直接调用操作系统的api来获取系统相关数据。

本文则主要介绍一种通过Hyperic-hq产品的基础包sigar.jar来实现服务器状态数据的获取。Sigar.jar包是通过本地方法来调用操作系统API来获取系统相关数据。

作用

实时监测服务器主机的物理信息,如CPU使用信息、内存使用信息、硬盘使用信息以及网卡和网络的使用情况。

源码说明

com.system.runtime
	|-common
	|	|-SystemRuntime.java
	|		操作实体类
	|-pojo
	|	|-systemStatusPojo.java
	|		存储系统实时状态的po
	|-service
	|	|-systemStatusService.java
	|	|	RMI服务接口
	|	|-systemStatusServiceImpl.java
	|		服务的实现	
	|-main.java
		主函数入口
demo
	|-sigar.java
		官方示例
test
	|-Client.java
		客户端测试
jar 生成的可以用jar包
lib	官方jar包以及底层支撑文件

问题解答

1、mac下eclipse中配置java.library.path

Mac下,eclipse中的配置方法:项目右键->属性->java build path->选择Libraries中的sigar.jar->在展开的Native library location中选择底层文件所在目录即可

2、网络传输速率

jar包中不提供网络传输速率的方法,需要采集两次,自行计算出传输速率

3、局域网中无法连接

在网络传输中,当有多个网卡进行切换时,rmi会出现无法连接的错误。建议更换IP地址访问。

如:服务器处于两个局域网 192.168.191.* 和 172.29.131.* ,客户端处于 192.168.191.* 之中。当客户端连接192.168.191.* 时可用连接,但是响应超时。但是连接 172.29.131.* 时则可以正常使用

空文件

简介

fork:https://github.com/yangengzhe/sigar-system_runtime.git 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/mfq1020/sigar-system_runtime.git
git@gitee.com:mfq1020/sigar-system_runtime.git
mfq1020
sigar-system_runtime
sigar-system_runtime
master

搜索帮助