一、安装与准备:确保cpustat可用
cpustat是sysstat工具包的一部分,在Debian系统中需先安装sysstat才能使用。通过以下命令完成安装:
sudo apt update && sudo apt install sysstat
安装完成后,sysstat服务会自动启动(若未启动,可通过sudo systemctl start sysstat手动启动),用于收集系统性能数据。
二、基本运行:获取CPU使用数据
cpustat的核心功能是实时监控CPU使用情况,常用命令如下:
cpustat -u 1
输出包含%usr(用户空间占比)、%sys(内核空间占比)、%idle(空闲率)等关键指标。cpustat -p ALL
可识别多核CPU中是否存在负载不均衡(如某核心利用率远高于其他核心)。cpustat -i 2 5 > cpu_usage.log
表示每2秒采集一次,共采集5次,结果保存到cpu_usage.log。三、分析输出:识别性能瓶颈
通过cpustat的输出数据,可定位Debian应用的性能瓶颈,重点关注以下指标:
四、优化措施:针对性解决问题
根据cpustat识别的瓶颈,采取以下优化手段:
%usr高的问题,可通过以下方式改进:
multiprocessing模块、Java的线程池)。%sys或%iowait高的问题:
ionice调整应用进程的I/O优先级(如ionice -c 2 -n 7 your_command,将I/O优先级设为“空闲”),或更换为SSD存储;sysctl优化TCP栈(如增大net.core.somaxconn连接队列长度、调整net.ipv4.tcp_tw_reuse复用TIME-WAIT连接),减少网络延迟;%usr或%sys仍持续高位,且业务增长需要,可升级CPU(增加核心数或换用更高主频的处理器)、增加内存(减少磁盘交换)。五、持续监控:确保优化效果
性能优化是长期过程,需持续使用cpustat监控系统状态:
0 * * * * /usr/bin/cpustat -u 1 > /var/log/cpu_hourly.log)。top查看实时进程CPU占用、vmstat监控内存和I/O、perf进行深度性能分析(如函数级热点分析),综合判断优化效果。