最近老板给提出一个需要,项目需求大致如下:
1、用树莓派作为网关,底层接多个ZigBee传感节点,网关把ZigBee传感节点采集到的信息通过串口接收汇总,并且发送给上层的HTTP Server;2、要有数据的反向控制通道,即网关与Server间要保持长连接,采用websocket实现,以此实现给ZigBee传感节点发送控制命令,来实现对ZigBee节点的远程配置操作;
3、树莓派网关本身要与上层Server实现交互,上层Server能够看到网关实时的cpu、内存以及网络上行与下行的带宽等等;
前两条需求在前一段时间已经基本实现,等后续有时间完善之后在整理,今天记录一下第三条的实现过程。
#!/usr/bin/env python # -*- coding:utf-8 -*- ############################# #__author__ = 'webber' # #create at 2016/12/12 # ############################# import os import sys import time def cpuinfo(): """ get cpuinfo from '/proc/stat' and calculate the percentage of the cpu occupy. """ f = open('/proc/stat','r') cpu = f.readline() f.close() #print "cpuinfo: ", cpu cpu = cpu.split(" ") total = 0 usr = float(cpu[2]) #用户态cpu占用率 _sys = float(cpu[4]) #内核态cpu占用率 for info in cpu: if info.isdigit(): total += float(info) print '