客户端向服务端上报状态

    项目以后可能有这么一个需求:管理系统将会监管所有被管理的设备的状态。所谓的状态包括:每台设备的运行状态(CPU/内存/网络/磁盘空间等参数)和在线状态。

    因为管理系统是一个BS架构的应用,所以我想在每台被管理的客户端都运行一个Java的小程序,该程序实现的功能:

    1. 开机自动启动 【linux下通过写入/etc/init.d即可】

    2. 程序一旦启动,将执行一个定时任务 【考虑使用Quartz】

    3. 该定时任务就是每隔3分钟向管理系统上报系统的运行状态。

        3.1 系统状态参数的获取我打算使用Sigar

        3.2 上报我打算使用HttpURLConnection,直接走HTTP协议,将获取到的参数以post方式提交给服务端

    在服务端,需要准备的是:

    1. 服务端此时需要对外公布一个接口,供客户端调用。服务端将接收的数据存入数据库。【与处理前台请求无异】

    2. 如果客户端连续3次没有上报系统状态,服务端就认为该客户端处于离线状态。【心跳机制】

    3. 如果检测到设备离线,则产生一条告警信息。


    以上是我的一个想法,可行性还有待确认,我感觉这种方式支持客户端比较少的情况应该没有什么问题。如果需要监控的设备较多,我想尝试使用Socket来完成这一切功能,包括服务端,可能需要使用多线程进行接收处理。

    

转载于:https://my.oschina.net/vbird/blog/194857

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值