• Linux性能优化实战学习笔记:第三十讲


    一、性能指标

    二、文件系统I/O性能指标

    1、存储空间的使用情况

    文件系统向外展示的空间使用,而非磁盘空间的真是用量,因为文件系统的元数据也会占用磁盘空间

    2、索引节点的使用情况

    如果存储过多的小文件、就可能碰到索引节点容量已满的问题

    3、缓存使用情况

    如果存储过多的小文件、就可能碰到索引节点容量已满的问题,从而可以减少访问慢速磁盘的次数

    4、文件IO

     

     三、磁盘I/O性能指标

    四、性能工具

    1、文件系统原理

    2、磁盘I/O原理

    3、狂打日志案例

    4、磁盘I/O延迟的单词热度案例

    5、MYSQL的案例

    6、redis的案例

    五、性能指标和工具的联系

    第一个维度、从文件系统和磁盘 I/O 的性能指标出发。换句话说,当你想查看某个性能指标时,要清楚知道,哪些工具可以做到

    根据指标找工具

    第二个维度,从工具出发。也就是当你已经安装了某个工具后,要知道这个工具能提供哪些指标

    根据指标找工具

    根据指标招工

    六、如何迅速分析 I/O 的性能瓶颈

    那有没有什么方法,可以又快又准地找出系统的 I/O 瓶颈呢?

    还是那句话,找关联。多种性能指标间都有一定的关联性,不要完全孤立的看待他们。想弄清楚性能指标的关联性,
    就要通晓每种性能指标的工作原理。这也是为什么我在介绍每个性能指标时,都要穿插讲解相关的系统原理,再次希望你能记住这一点。

    1、先用 iostat 发现磁盘 I/O 性能瓶颈;
    2、再借助 pidstat ,定位出导致瓶颈的进程;
    3、随后分析进程的 I/O 行为;
    4、最后,结合应用程序的原理,分析这些 I/O 的来源。

    所以,为了缩小排查范围,我通常会先运行那几个支持指标较多的工具,如 iostat、vmstat、pidstat 等。然后再根据观察到的现象,结合系统和应用程序的原理,寻找下一
    步的分析方向。我把这个过程画成了一张图,你可以保存下来参考使用。

    图中列出了最常用的几个文件系统和磁盘 I/O 性能分析工具,以及相应的分析流程,箭头则表示分析方向。这其中,iostat、vmstat、pidstat 是最核心的几个性能工具,它们也提
    供了最重要的 I/O 性能指标。举几个例子你可能更容易理解。

    例如,在前面讲过的 MySQL 和 Redis 案例中,我们就是通过 iostat 确认磁盘出现 I/O性能瓶颈,然后用 pidstat 找出 I/O 最大的进程,接着借助 strace 找出该进程正在读写的
    文件,最后结合应用程序的原理,找出大量 I/O 的原因。

    再如,当你用 iostat 发现磁盘有 I/O 性能瓶颈后,再用 pidstat 和 vmstat 检查,可能会发现 I/O 来自内核线程,如 Swap 使用大量升高。这种情况下,你就得进行内存分析了,
    先找出占用大量内存的进程,再设法减少内存的使用。

    另外注意,我在这个图中只列出了最核心的几个性能工具,并没有列出前面表格中的所有工具。这么做,一方面是不想用大量的工具列表吓到你。在学习之初就接触所有核心或小
    众的工具,不见得是好事。另一方面,也是希望你能先把重心放在核心工具上,毕竟熟练掌握它们,就可以解决大多数问题。

    所以,你可以保存下这张图,作为文件系统和磁盘 I/O 性能分析的思路图谱。从最核心的这几个工具开始,通过我提供的那些案例,自己在真实环境里实践,拿下它们。

    七、小结

    今天,我们一起复习了常见的文件系统和磁盘 I/O 性能指标,梳理了常见的 I/O 性能观测工具,并建立了性能指标和工具的关联。最后,我们还总结了快速分析 I/O 性能问题的思路。

    还是那句话,虽然 I/O 的性能指标很多,相应的性能分析工具也有不少,但熟悉了各指标含义后,你就会自然找到它们的关联。顺着这个思路往下走,掌握常用的分析套路也并不难。

  • 相关阅读:
    Type Safety and Type Inference
    LEARN SWIFT
    swift 类型备份
    Swift
    associatedtype关联类型
    深入理解 Swift 派发机制
    Swift中self和Self
    Postfix Self Expression
    CGContext与上下文
    eeee
  • 原文地址:https://www.cnblogs.com/luoahong/p/11150807.html
Copyright © 2020-2023  润新知