• Stars
    star
    140
  • Rank 261,473 (Top 6 %)
  • Language
    Java
  • License
    MIT License
  • Created over 8 years ago
  • Updated almost 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

基于java通过第三方jar包sigar的支持,完成对服务器系统的参数监控,包括CPU、内存、硬盘以及网络流量的实时监控

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.* 时则可以正常使用

More Repositories

1

coding-guide_i3geek

一名JAVA程序员,将自己的编程学习之路做以总结并进行分享。内容包括但不限于数据结构、算法、数据库、操作系统、计算机网络等多方面
Java
314
star
2

webChat

基于layim的web聊天系统,采用Java技术 WebSocket+mysql,利用spring mvc框架+MyBatis实现
Java
94
star
3

wxcaiji_i3geek

wordpress插件,微信文章采集,微信公众号(服务号)全部历史文章采集,自动采集。
PHP
92
star
4

JMeter

利用JMeter对Web应用进行自动化压力测试。JAVA编写,通过参数动态改变线程数,通过模拟并发数测试应用的吞吐率,找到最佳吞吐率和最大吞吐率
Java
53
star
5

UHFReader_RFID

基于C#开发的RFID读卡器上位机客户端,对卡的EPC信息进行读取采集并传输。通用的物联网RFID采集模块
C#
38
star
6

wx_hrbust_sign

微信公众平台签到,报到,新生报到程序源码
PHP
8
star
7

tomcat_status

tomcat监控工具,通过manager应用对tomcat中运行的Web应用进行实时监控
Java
7
star
8

cloudmonitor

对云平台的立体化监控系统,分别监控云计算的底层服务器、虚拟机和上层WEB应用的运行状态,并根据现有状态对外来进行预测,并及时预警和优化意见
Java
5
star
9

Geeker-One

Wordpress 博客主题 GEEKER-ONE
CSS
4
star
10

HrbustWeixin

教务在线微信公众平台
PHP
3
star
11

web_resource_evaluation

WEB应用的资源评估模型,通过Jmeter压测技术以及manager监控技术,对Tomcat下的WEB应用进行资源评估模型的建立,从而达到预测应用运行状态的目的,保证应用的稳定运行
Java
3
star
12

distributed_clusters

Apache+tomcat+mysql实现的分布式集群。Apache入口做负载均衡,Tomcat集群并通过Terracotta实现Session共享,利用NFS实现文件系统共享,最后数据层用Mysql cluster 实现Mysql集群
Java
3
star
13

proxy_jdk-research

简单实现一个java.lang.reflect.Proxy类。学习代理模式,JDK动态代理,了解AOP原理。
Java
2
star
14

vm_monitor

基于JAVA的虚拟机实时监控系统,监控当前虚拟机的运行指标,tomcat的运行指标,实时记录并归档
Java
1
star
15

jpcap_monitor

Java
1
star