小弟这几天正在弄java做Web简版的机房环境监控系统,有经验的大哥大姐帮忙指点一下该怎样分析。
dll、exe只是取值(机房环境监控)方式不同,最终还是要与你的硬件通讯来的。根据你硬件的通讯协议,发送指令,返回结果,
比如你硬件基于rs232(串口)获取温度的指令是CMD#aaa
那么,你先配好rs232的基本参数(串口号、波特率、数据位、停止位、奇偶校验位等),然后通过串口发送‘CMD#aaa’,那么返回的就是温度值了。
没有通讯协议,没没办法描述
snmp,这个协议能很好的帮助你,对应的就是snmp4j。
机房环境,温度?湿度?还是服务器的各种参数?
温度湿度的话,我帮不了你了。
服务器的什么内存啊,交换空间啊,硬盘啊,流量这些如果你一定要用java的web,那就用我说的snmp4j,这个会好些。
也有现成能用的,例如cacti和nagios这两个。
可以使用现成的监控框架zabbix等,或者使用SSH到目标机器上监控。SSH框架有Ganyemed、Jsch等
温湿度、烟感监控这些的话,就需要与传感器通信了,传感器获得了数据,然后程序做处理,前台显示。
如果要可以看历史纪录的话,这些数据还要存数据库。
至于如何与传感器通信,获得它的数据,那你要看各类传感器的。
需要与硬件设备进行通讯。现在市场上有卖带无线通讯功能的探头(温湿度)、烟感(不清楚)。关键点是实时显示那些值,两种解决方法:
1、通过一个应用程序(EXE)将那些设备的相关数值写入数据表里,带通讯功能探头都带有这种应用程序的
2、根据通讯协议自己写个应用程序(EXE),将相关值实时写到数据表里;或者写成接口文件(DLL),在页面里定时刷新(调用DLL接口的方法,DLL设备直接与设备通讯-RS232、RJ45)
不明白,可以加我QQ:15932551
你这个以我原来做过的项目看应该是这么个情况,你web监控界面其实是对已经处理完成的数据进行展示用。而主要的问题点还在于如何采集这些数据,一般来说要采集这些数据都需要专门的设备来处理,比如专用的温度、湿度采集仪器,采集完数据一般会通过计算机的串口把数据传送到计算机,计算机会通过对应的上位机软件来处理这些固定格式的数据,处理完成并入库(数据库),然后web界面查询这些数据并展示,起到监控作用。
一般的流程如此,不过每一个环节都比较麻烦.
其实做起来也比较简单,我Q晚上一般都在线
nagios
[quote="tianmacgw"]问题补充:
sheep3600 写道
机房环境,温度?湿度?还是服务器的各种参数?
温度湿度的话,我帮不了你了。
服务器的什么内存啊,交换空间啊,硬盘啊,流量这些如果你一定要用java的web,那就用我说的snmp4j,这个会好些。
也有现成能用的,例如cacti和nagios这两个。
我要做的就是温湿度、烟感监控之类的。[/quote]
[b]这样的话, Java充其量只是做了数据展示工作, 数据的获取肯定得要硬件设备来采集了. [/b]
三种方式,看你选择
a、java直接加载显示数据:
编写一个dll,DLL提供接口方法,java通过调用DLL接口方法,进行数据获取。dll直接与硬件进行通讯
b、java从数据库加载显示数据:
java从数据库获取数据,exe程序与硬件通讯并将结果写入数据表。
c、java从文件里加载显示数据:
java从文件里获取数据,dll或exe将硬件的信息写入文件(通过listener来根据文件内容的变化)
获取数据后,在页面显示,通过ajax定时刷新显示
https://blog.csdn.net/qq_34169076/article/details/117749661 开源的国产化zabbix,java开跨平台,这个不错很适合你