CentOS 进程性能测试工具与用法
一 工具分类与定位
二 快速上手流程
三 常用命令速查表
| 目标 | 工具与命令示例 | 关键指标/用途 |
|---|---|---|
| 进程 CPU 占用 | pidstat -u -p |
进程 %CPU,定位计算密集 |
| 进程内存占用 | pidstat -r -p |
RSS/VSZ、内存泄漏排查 |
| 进程上下文切换 | pidstat -w -p |
cswch/s(自愿/非自愿切换) |
| 全局负载趋势 | watch -d uptime | 1/5/15 分钟 load average |
| 多核 CPU 利用率 | mpstat -P ALL 1 | %usr、%sys、%iowait、%idle |
| 系统整体资源 | vmstat 1 | r/b/si/so/bi/bo、CPU/内存/IO 概览 |
| 磁盘 IO 性能 | iostat -x 1 | await、svctm、r/s、w/s、util |
| 进程磁盘 IO | iotop | 进程级 读/写速率 排行 |
| 历史性能数据 | sar -u 1 10;sar -r 1 10 | CPU/内存 历史曲线回放 |
| 制造 CPU 负载 | stress --cpu N --timeout T | 快速打满 N 个 CPU |
| 制造内存负载 | stress --vm N --vm-bytes X --vm-keep | 持续占用 N×X 内存 |
| 制造 IO 负载 | stress-ng -i 1 --hdd 1 --timeout 600 | 通过临时文件产生 磁盘 IO |
| 通用基准测试 | sysbench cpu --cpu-max-primes=100000 --threads=4 run | CPU 计算基准 |
| 磁盘基准测试 | fio --ioengine=libaio --bs=4k --direct=1 --rw=randread --size=1G --runtime=60 --name=randread | IOPS/延迟 测试 |
四 判定与优化参考