点击预览线上demo

写个web服务(app.js),提供接口: GET/device 返回:

  • 服务器的 CPU、内存状态;
  • 服务器的全量进程列表并按照CPU消耗排序;

同目录下写个bin/hotnode 最终通过 hotnode app.js 启动服务,并在 app.js 文件变动后自动重启 app.js 进程。

实现思路

  1. 考虑到CPU与memory的信息都写在具体的文件中,可以通过读取文件的形式,拿到文件内容再解析,实际操作发现这种做法比较傻,代码量也比较多,主要是拿到文件内容后解析成固定格式的过程比较繁琐。
  2. 后来发现可以通过exec执行具体的命令,然后将命令的输出返回,这种做法就比较机智啊,因为可以通过现有的组合命令直接输出想要的结果,而不用根据step1的输出进行二次处理。
  3. 再后来发现node os模块提供了cpus等方法,是不是能进一步简化实现?待验证

TODO

  1. 轮询,展示方式切换成折线图,展示使用率变化趋势
  2. hotnode实现