安装:npm install clinic -g
创建服务文件 server.js
const http = require('http');
let obj = {}, i = 0;
function newmsg() {
obj[i++] = Math.random();
return JSON.stringify(obj);
}
http.createServer((req, res)=>{
// 每次请求将调用 newmsg 方法使得 obj 对象的占用内存将越来越大
let msg = newmsg();
res.end();
}).listen(3000, ()=>{
console.log('启动成功')
})
// 在cmd中使用 clinic 启动项目
clinic doctor -- node server.js
配合 autocannon压测工具 使用
//打开新cmd窗口执行, -c 100 指的是连接并发数量, -d 表示持续测试 20 秒
autocannon -c 100 -d 20 http://localhost:3000/
autocannon压测完成后在clinic的cmd窗口快捷键 Ctrl + c 生成报告
发现一个问题:Detected a potential Event Loop issue,Detected a potential Event Loop issue