perf是Linux下的一款性能分析工具,可以进行函数级与指令级的热点查找。php
docker run -dt --privileged=true -p 3333:22 -p 80:80 -v /Users/wenba/Desktop/project:/data -v /Users/wenba/Desktop/docker/nginx:/usr/server/openresty/nginx/conf/vhost --name mydocker 933bdb63c863 /usr/local/sbin/run.shnginx
启动docker测试时,记得使用 --privileged=true 容许超级权限模式docker
yum install perf
复制代码
# 统计全局性能 perf record -g 复制代码
一段时间后bash
# 查看记录 perf report 复制代码
# 查看进程ID ps aux|grep index.php # 查看记录 perf record -p 276 复制代码
一段时间后markdown
# 查看记录 perf report 复制代码
经过分析能够看到在哪些地方占用了更多的cpu,咱们看到有个pow_function, 能够回车进入看到具体的执行指令函数
咱们还能够使用相似top的指令用法工具
# 全局性能观测 perf top # 监控某个进程 perf top -p 327 复制代码
# 根据comms限定范围 perf top --comms nginx,php 复制代码
可能并非一个进程在提供服务,若是须要所有分析的话能够利用,分隔性能
perf top -p 23015,32476
复制代码
最后根据查看消耗指令,综合分析, 排查系统瓶颈。测试
更多精彩内容关注:spa