cpustat
和 vmstat
是两个在 Linux 系统中用于监控系统性能的命令行工具,但它们的关注点和输出信息有所不同。
cpustat
是 sysstat
包中的一个工具,主要用于报告 CPU 的统计信息。它可以显示每个 CPU 的详细使用情况,包括用户态时间、系统态时间、空闲时间等。cpustat
提供了丰富的选项来定制输出,例如按 CPU 核心显示统计信息、显示特定时间间隔的统计信息等。
示例输出:
CPU %usr %sys %iowait %steal %idle
all 12.34 5.67 0.12 0.00 81.87
0 10.23 4.56 0.23 0.00 85.00
1 14.56 6.78 0.09 0.00 78.57
vmstat
是另一个用于监控系统性能的工具,它可以报告关于进程、内存、分页、块IO、陷阱和CPU活动的信息。vmstat
的输出包括系统整体性能的快照,以及一段时间内的平均值。
示例输出:
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 1638488 131072 262144 0 0 1 0 10 15 2 1 97 0 0
0 0 0 1638488 131072 262144 0 0 0 0 8 12 1 1 98 0 0
cpustat
主要关注 CPU 的使用情况,而 vmstat
提供了更全面的系统性能监控,包括 CPU、内存、IO 和进程等信息。cpustat
输出详细的 CPU 使用统计信息,按 CPU 核心显示;vmstat
输出系统整体性能的快照,包括一段时间内的平均值。cpustat
是一个更好的选择;如果你需要监控整个系统的性能,vmstat
更合适。总之,cpustat
和 vmstat
都是强大的系统监控工具,选择哪个取决于你的具体需求和关注点。