0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

盘点那些常用的Linux性能分析工具2

jf_78858299 来源:码农的荒岛求生 作者:陆小风 2023-02-15 14:11 次阅读

9,netstat

netstat 用于显示与 IP、TCP、UDP和 ICMP 协议相关的统计数据,一般用于检验本机各端口网络连接情况。

常见用法:

netstat –npl   # 可以查看你要打开的端口是否已经打开。

netstat –rn    # 打印路由表信息

netstat –in    # 提供系统上的接口信息,打印每个接口的MTU,输入分组数,输入错误,输出分组数,输出错误,冲突以及当前的输出队列的长度。

10, ps--显示当前进程的状态

ps 参数太多,具体使用方法可以参考 man ps

常用的方法:

ps  aux       #hsserver

ps –ef |grep   #hundsun

杀掉某一程序的方法:

ps  aux | grep mysqld | grep –v grep | awk ‘{print $2 }’ xargs kill -9

杀掉僵尸进程:

ps –eal | awk ‘{if ($2 == “Z”){print $4}}’ | xargs kill -9

11,strace

跟踪程序执行过程中产生的系统调用及接收到的信号,帮助分析程序或命令执行中遇到的异常情况。

举例:查看 mysqld 在 linux 上加载哪种配置文件,可以通过运行下面的命令:

strace –e stat64 mysqld –print –defaults > /dev/null

11,uptime

能够打印系统总共运行了多长时间和系统的平均负载,uptime 命令最后输出的三个数字的含义分别是 1分钟,5分钟,15分钟内系统的平均负荷。

12,lsof

lsof(list open files)是一个列出当前系统打开文件的工具。通过 lsof 工具能够查看这个列表对系统检测及排错,常见的用法:

查看文件系统阻塞

lsof /boot

查看端口号被哪个进程占用

lsof  -i : 3306

查看用户打开哪些文件

lsof –u username

查看进程打开哪些文件

lsof –p  4838

查看远程已打开的网络链接

lsof –i @192.168.34.128

13,perf

perf 是 Linux kernel 自带的系统性能优化工具。优势在于与 Linux Kernel 的紧密结合,它可以最先应用到加入 Kernel 的new feature,用于查看热点函数,查看 cashe miss 的比率,从而帮助开发者来优化程序性能。

性能调优工具如 perf,Oprofile 等的基本原理都是对被监测对象进行采样,最简单的情形是根据 tick 中断进行采样,即在 tick 中断内触发采样点,在采样点里判断程序当时的上下文。

假如一个程序 90% 的时间都花费在函数 foo() 上,那么 90% 的采样点都应该落在函数 foo() 的上下文中。运气不可捉摸,但我想只要采样频率足够高,采样时间足够长,那么以上推论就比较可靠。因此,通过 tick 触发采样,我们便可以了解程序中哪些地方最耗时间,从而重点分析。

14, 汇总

结合以上常用的性能测试命令并联系文初的性能分析工具的图,就可以初步了解到性能分析过程中哪个方面的性能使用哪方面的工具(命令)。

常用的性能测试工具

熟练并精通了第二部分的性能分析命令工具,引入几个性能测试的工具,介绍之前先简单了解几个性能测试工具:

  • perf_events:一款随 Linux 内核代码一同发布和维护的性能诊断工具,由内核社区维护和发展。Perf 不仅可以用于应用程序的性能统计分析,也可以应用于内核代码的性能统计和分析。
  • eBPF tools:一款使用 bcc 进行的性能追踪的工具,eBPF map可以使用定制的 eBPF 程序被广泛应用于内核调优方面,也可以读取用户级的异步代码。重要的是这个外部的数据可以在用户空间管理。这个 k-v 格式的 map 数据体是通过在用户空间调用 bpf 系统调用创建、添加、删除等操作管理的。
  • perf-tools:一款基于 perf_events (perf) 和 ftrace 的Linux性能分析调优工具集。Perf-Tools 依赖库少,使用简单。支持Linux 3.2 及以上内核版本。
  • bcc(BPF Compiler Collection)::一款使用 eBP F的 perf 性能分析工具。一个用于创建高效的内核跟踪和操作程序的工具包,包括几个有用的工具和示例。利用扩展的BPF(伯克利数据包过滤器),正式称为eBPF,一个新的功能,首先被添加到Linux 3.15。多用途需要Linux 4.1以上BCC。
  • ktap:一种新型的linux脚本动态性能跟踪工具。允许用户跟踪Linux内核动态。ktap是设计给具有互操作性,允许用户调整操作的见解,排除故障和延长内核和应用程序。它类似于Linux和Solaris DTrace SystemTap。
  • Flame Graphs:是一款使用 perf,system tap,ktap 可视化的图形软件,允许最频繁的代码路径快速准确地识别,可以是使用 github.com/brendangregg/flamegraph 中的开发源代码的程序生成。

1,Linux observability tools | Linux 性能观测工具

图片

  • 首先学习的Basic Tool有如下:uptime、top(htop)、mpstat、isstat、vmstat、free、ping、nicstat、dstat。
  • 高级的命令如下:sar、netstat、pidstat、strace、tcpdump、blktrace、iotop、slabtop、sysctl、/proc。

2, Linux benchmarking tools | Linux 性能测评工具

图片

是一款性能测评工具,对于不同模块的性能测试可以使用相应的工具,想要深入了解,可以参考最下文的附件文档。

3,Linux tuning tools | Linux 性能调优工具

图片

是一款性能调优工具,主要是从linux内核源码层进行的调优,想要深入了解,可以参考下文附件文档。

4, Linux observability sar | linux性能观测工具

图片

sar(System Activity Reporter系统活动情况报告)是目前LINUX上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC 有关的活动等方面。sar 的常规使用方式:

sar  [options] [-A] [-o file]  t [n]

其中:t 为采样间隔,n 为采样次数,默认值是1;-o file 表示将命令结果以二进制格式存放在文件中,file 是文件名,options 为命令行选项。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11030

    浏览量

    207240
  • 计算机
    +关注

    关注

    19

    文章

    6842

    浏览量

    85714
  • 操作系统
    +关注

    关注

    37

    文章

    6394

    浏览量

    122297
收藏 人收藏

    评论

    相关推荐

    一款随Linux内核代码维护的性能诊断工具

    Perf Event 是一款随 Linux 内核代码一同发布和维护的性能诊断工具,由内核社区维护和发展。Perf 不仅可以用于应用程序的性能统计分析
    的头像 发表于 04-06 09:23 7465次阅读
    一款随<b class='flag-5'>Linux</b>内核代码维护的<b class='flag-5'>性能</b>诊断<b class='flag-5'>工具</b>

    如何在命令行模式下使用已有的Linux性能分析

    当你登陆一台 Linux 服务器之后,因为一个问题要做性能分析时:你会在第 1 分钟内做哪些检测呢? 在 Netflix,我们有很多 EC2 的 Linux 机器,并且也需要很多
    的头像 发表于 02-17 09:45 3242次阅读
    如何在命令行模式下使用已有的<b class='flag-5'>Linux</b><b class='flag-5'>性能</b><b class='flag-5'>分析</b>

    Linux性能分析工具汇总

    出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章。本文也可以作为检验基础知识的指标,另外文章涵盖了一个系统的方方面面。如果没有完善的计算机系统知识,网络知识和操作系统知识,文档中的工具,是不可能完全掌握的,另外对系统
    发表于 11-01 13:11 440次阅读

    Linux性能分析工具大全

    今天浩道跟大家分享关于linux性能分析过程中常用到的分析工具
    发表于 01-05 09:52 511次阅读

    常用Linux命令盘点

    玩过Linux的人都会知道,Linux中的命令的确是非常多,但是玩过Linux的人也从来不会因为Linux的命令如此之多而烦恼,因为我们只需要掌握我们最
    发表于 07-11 08:21

    常用linux命令盘点

    工作中常用linux命令
    发表于 07-22 07:24

    OpenHarmony常用性能分析工具

    、OpenHarmony性能分析工具之hiperf介绍hiperf 是 OpenHarmony 为开发人员提供的用于调试的命令行工具,用于抓取特定程序或者系统的
    发表于 03-21 09:42

    Linux那些事儿之我是Sysfs

    Linux那些事儿之我是Sysfs
    发表于 10-29 09:28 5次下载
    <b class='flag-5'>Linux</b>的<b class='flag-5'>那些</b>事儿之我是Sysfs

    Linux那些事儿之我是Hub

    Linux那些事儿之我是Hub
    发表于 10-29 09:37 7次下载
    <b class='flag-5'>Linux</b>的<b class='flag-5'>那些</b>事儿之我是Hub

    Linux那些事儿之我是Block层

    Linux那些事儿之我是Block层
    发表于 10-29 09:43 9次下载
    <b class='flag-5'>Linux</b>的<b class='flag-5'>那些</b>事儿之我是Block层

    Linux(ubuntu)常用工具

    本文档内容介绍了基于Linux(ubuntu)常用工具,供参考
    发表于 04-17 16:15 23次下载

    你知道perf学习-linux自带性能分析工具怎么用?

    Linux性能调优工具,32内核以上自带的工具,软件性能分析。在2.6.31及后续版本的
    发表于 05-16 14:54 2486次阅读

    盘点那些常用Linux性能分析工具1

    出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章。本文也可以作为检验基础知识的指标,另外文章涵盖了一个系统的方方面面。如果没有完善的计算机系统知识,网络知识和操作系统知识,文档中的工具,是不可能完全掌握的,另外对系统
    的头像 发表于 02-15 14:10 450次阅读
    <b class='flag-5'>盘点</b><b class='flag-5'>那些</b><b class='flag-5'>常用</b>的<b class='flag-5'>Linux</b><b class='flag-5'>性能</b><b class='flag-5'>分析</b><b class='flag-5'>工具</b>1

    Linux常用远程连接工具

    前言 大家好,这里是 浩道Linux ,主要给大家分享Linux、Python、 网络通信、网络安全等 相关的IT知识平台。 今天浩道跟大家分享几款Linux 常用远程连接
    的头像 发表于 06-30 10:31 1320次阅读
    <b class='flag-5'>Linux</b><b class='flag-5'>常用</b>远程连接<b class='flag-5'>工具</b>

    Linux perf性能、实际应用与案例

    Linux perf(性能分析工具)是一个功能强大且灵活的性能剩余工具,它可以在
    发表于 07-03 10:22 477次阅读