在Ubuntu上进行Node.js性能测试,可从工具使用、测试步骤及优化建议三方面入手,具体如下:
wrk -t12 -c400 -d30s http://localhost:3000(12线程、400并发、持续30秒)。perf_hooks用于测量代码执行时间,console.time()/console.timeEnd()快速定位耗时代码块。heapdump生成内存快照,v8-profiler分析内存泄漏。top/htop查看CPU/内存占用,vmstat监控磁盘I/O。perf_hooks测量函数执行时间,例如:const { performance } = require('perf_hooks');
const start = performance.now();
// 待测试代码(如循环、HTTP请求)
const end = performance.now();
console.log(`耗时:${end - start}ms`);
ab -n 1000 -c 100 http://localhost:3000(1000请求、100并发)。worker_threads处理CPU密集型任务,通过stream处理大文件以节省内存。vm.swappiness)优化内存使用,启用Nginx反向代理分担压力。winston或morgan记录请求日志,结合ELK栈分析异常。以上工具和方法可组合使用,覆盖从代码级到系统级的性能测试需求,确保Node.js应用在高负载下稳定运行。