如何获取当前进程的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` 
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容