返回顶部
l

linux-performance-analyzerLinux性能分析

>

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
216
下载量
免费
免费
1
收藏
概述
安装方式
版本历史

linux-performance-analyzer

Linux 性能分析与调优全能手册 (linux-perf-master)

本 skill 整合了 linux-perf-advisor、linux-perf-analysis、linux-perf-tune、linux-performance-analyzer 四个专项 skill 的精华内容,提供完整的性能诊断→根因分析→优化实施→验证回滚闭环能力。


📋 分析工作流

第一步:收集现场数据(运行快照脚本或手动采集)

第二步:识别瓶颈类型(CPU / 内存 / I/O / 网络 / 编译)

第三步:查阅对应参考文档深入分析

第四步:输出标准化分析报告(含问题/原因/方案/风险/验证/回滚)

第五步:实施优化并验证效果



第一步:快速数据采集

方式一:使用采集脚本(推荐)

bash

系统快照(全面)


bash scripts/collect_snapshot.sh

持续监控(后台运行,每5秒采样)

bash scripts/perf_monitor.sh &

方式二:手动快速诊断命令

bash

① 负载概览


uptime && cat /proc/loadavg

② 内存状态

free -h && cat /proc/meminfo | grep -E MemTotal|MemFree|MemAvailable|Buffers|Cached|SwapTotal|SwapFree|Dirty|AnonPages|Slab|HugePages

③ CPU + 进程

top -bn1 | head -20 mpstat -P ALL 1 3

④ I/O

iostat -xz 1 3 iotop -o -b -n 3 | head -20

⑤ 网络

ss -s ss -ant | awk {print $1} | sort | uniq -c | sort -rn

⑥ 内核参数现状

sysctl -a 2>/dev/null | grep -E ^vm\.|^net\.|^kernel\.sched | head -60

⑦ 上下文切换

vmstat 1 5

⑧ OOM 历史

dmesg | grep -iE oom|killed process | tail -20

⑨ 中断分布

cat /proc/interrupts | sort -k2 -rn | head -20

⑩ 磁盘空间

df -h && lsblk

第二步:瓶颈快速识别表

现象可能瓶颈参考文档
load average 持续 > CPU核数×2CPU 饱和 或 I/O 等待references/cpu.md
vmstat cs(上下文切换)> 10万/秒
CPU 调度过频 | references/cpu.md | | %iowait > 20% | 磁盘 I/O 瓶颈 | references/disk_io.md | | MemAvailable < 总内存 10% | 内存压力 | references/memory.md | | Swap 使用率 > 20% 且持续增长 | 内存严重不足 | references/memory.md | | OOM Killer 日志出现 | 内存泄漏 或 配置不当 | references/memory.md | | Dirty 持续 > 物理内存 5% | 写回积压 I/O 跟不上 | references/disk_io.md | | 大量 TIMEWAIT / CLOSEWAIT | 网络连接泄漏/未优化 | references/network.md | | 网络丢包 / 重传率高 | TCP 参数/带宽/拥塞 | references/network.md | | perf/gprof 热点在用户态代码 | 编译未优化 | references/compile_optimization.md | | CPU throttling(容器) | cgroup CPU 限制过低 | references/cpu.md |

第三步:分析报告输出格式规范

每个问题按以下六要素输出,格式统一:

markdown

🔴/🟡/🟢 问题名称(优先级 P0/P1/P2)

【问题】
观察到的指标数据和异常现象

【原因】
根因推断和分析

【方案】
bash

具体优化命令

【风险】
改动的副作用和注意事项

【验证】
bash

验证效果的命令

【回滚】
bash

回滚命令

报告汇总表格模板

markdown

优先级问题影响范围操作难度建议操作
🔴 P0......低/中/高...



第四步:常见场景快速处理

🔴 内存问题

诊断命令:
bash
cat /proc/meminfo
dmesg | grep -i oom\|killed process | tail -20
ps aux --sort=-%mem | head -15
slabtop -o | head -20
numastat -m 2>/dev/null # NUMA 信息(多路服务器)

核心调优(详见 references/memory.md):
bash

Swap 倾向(服务器推荐 10,数据库推荐 1)


sysctl -w vm.swappiness=10

增大内核保留内存(防止 OOM 误杀关键进程)

sysctl -w vm.minfreekbytes=262144 # 256MB

脏页回写(写密集场景)

sysctl -w vm.dirty_ratio=10 sysctl -w vm.dirtybackgroundratio=5

透明大页(数据库/延迟敏感服务关闭)

echo never > /sys/kernel/mm/transparent_hugepage/enabled echo never > /sys/kernel/mm/transparent_hugepage/defrag

保护关键进程免遭 OOM Kill

echo -1000 > /proc//oomscoreadj

🔴 CPU 问题

诊断命令:
bash
mpstat -P ALL 1 5
pidstat -u 1 5
vmstat 1 5 # 重点看 r(运行队列)和 cs(上下文切换)
cat /proc/interrupts | sort -k2 -rn | head -20
perf stat -e cycles,instructions,cache-misses -a sleep 5

核心调优(详见 references/cpu.md):
bash

减少上下文切换(调度粒度)


sysctl -w kernel.schedmingranularity_ns=10000000
sysctl -w kernel.schedwakeupgranularity_ns=15000000
sysctl -w kernel.schedmigrationcost_ns=5000000

关闭 NUMA 均衡(延迟敏感场景)

sysctl -w kernel.numa_balancing=0

CPU 性能模式

echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

进程 CPU 亲和性绑核

taskset -pc 0-3

调整进程优先级

renice -5 -p # 提高优先级 renice +10 -p # 降低优先级

🔴 磁盘 I/O 问题

诊断命令:
bash
iostat -xz 1 5
iotop -o -n 3 -b | head -30
cat /sys/block/sda/queue/nr_requests
cat /sys/block/sda/queue/scheduler
mount | grep -v tmpfs\|proc\|sys\|dev

核心调优(详见 references/disk_io.md):
bash

I/O 调度器(SSD: mq-deadline 或 none;HDD: bfq)


echo mq-deadline > /sys/block/sda/queue/scheduler

读预读(顺序读为主时增大)

blockdev --setra 4096 /dev/sda # 2MB 预读

增大内核请求队列

echo 256 > /sys/block/sda/queue/nr_requests

脏页控制(防止写爆)

sysctl -w vm.dirty_bytes=268435456 # 256MB sysctl -w vm.dirtybackgroundbytes=67108864 # 64MB

🔴 网络问题

诊断命令:
bash
ss -s
ss -ant | awk {print $1} | sort | uniq -c
netstat -s | grep -E fail|error|drop|overflow|reject | grep -v 0
ip -s link
ping -c 100 | tail -3

核心调优(详见 references/network.md):
bash

TIME_WAIT 回收(高并发短连接)


sysctl -w net.ipv4.tcptwreuse=1
sysctl -w net.ipv4.tcpfintimeout=30

端口范围(主动发起连接的服务)

sysctl -w net.ip

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 linux-performance-analyzer-1776027340 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 linux-performance-analyzer-1776027340 技能

通过命令行安装

skillhub install linux-performance-analyzer-1776027340

下载

⬇ 下载 linux-performance-analyzer v1.0.0(免费)

文件大小: 42.32 KB | 发布时间: 2026-4-13 10:52

v1.0.0 最新 2026-4-13 10:52
Initial release of linux-performance-analyzer, the all-in-one Linux performance analysis and tuning expert skill.

- Integrates best practices from multiple specialized skills (cpu, memory, disk I/O, network, kernel tuning, compiler optimization, container/K8s).
- Provides a standardized workflow for performance data collection, bottleneck identification, root cause analysis, optimization, and verification/rollback.
- Includes quick reference commands, tuning recommendations, and incident report templates for major performance domains.
- Offers threshold guides for baseline monitoring and alerting, with links to detailed tuning reference documents.
- Features practical checklists and rapid diagnosis guidelines for common performance incidents.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部