如何获取当前进程的CPU使用率、内存使用率

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` 
}

你可能感兴趣的:(如何获取当前进程的CPU使用率、内存使用率)