局域网内的计算机资源监控,包括CPU,内存和磁盘。项目共包括四个部分:
- 前端负责展示监控的结果
- 客户端负责收集本机的资源数据,并上报数据库
- 数据库存储各客户端发来的数据
- 服务端负责整个数据库的数据,对接前端的请求。以及定时清理数据库的数
此外呢,数据库还有一些要求:
目前配置的数据库名叫“monitor”
其中必须要包含一个表“template”,就是一个模板,使用以下语句创建即可
CREATE TABLE `template` (
`id` int NOT NULL AUTO_INCREMENT,
`time` datetime DEFAULT NULL,
`source` json DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci
客户端程序启动前,会检查是否有以本机ip命名的表,如果有,就正常写入数据,如果没有,就复制template表创建。然后呢,客户端每24小时还会清理一次本表的数据,超过24的直接删除。
服务端就是为了整个各个客户端的数据,然后给前端。
最后的效果如下图:
整套代码很简单,性能也不错,几乎不占用计算机的资源。