CPU使用率:nodejs提供os.loadavg()可以获取系统的CPU使用率,和进程CPU使用率不一回事
内存使用率:目前想到的计算方式是用 process.memoryUsage().rss / os.totalmem() 来获取,这个不太准确rss没有包含交换区和fs中的内存使用;
var _ = require('lodash');
var ps = require('current-processes');
ps.get(function(err, processes) {
var sorted = _.sortBy(processes, 'cpu');
var top5 = sorted.reverse().splice(0, 5);
console.log(top5);
});
{
pid: 1337, // Process ID
name: 'chrome', // Process name
mem: {
private: 23054560, // Private memory, in bytes
virtual: 78923608, // Virtual memory (private + shared libraries + swap space), in bytes
usage: 0.02 // Used physical memory (%) by this process
},
cpu: 0.3 // CPU usage (%) as reported by `ps` and `wmic`
}