linux系统中常见的性能分析工具

1、vmstatlinux

            vmstat是linux/unix上一个监控工具,能展现给定时间间隔的服务器的状态,包括操做系统的内存信息,CPU使用状态、进程信息等。
ios

语法:缓存

vmstat [-V] [delay [count]]
    #-V     打印出vmstat工具的版本信息
    #delay  设置两次输出的时间间隔
    #count  设置总共输出的次数

wKiom1fRWPqAviPmAABm6fuVbJY513.png


wKioL1fRWVqy5X5aAAB3kf0Qyik125.png

对输出参数进行讲解bash

    procs
服务器

        r:运行进程数(即真正分配到cpu的进程数量),若是该值长期大于系统逻辑cpu的数量,表示cpu不足
网络

        b:表示阻塞的进程数
tcp

    memory
ide

        swpd:表示正在使用的虚拟内存的多少
工具

        free:表示当前空闲的物理内存的大小
性能

        buff:表示当前使用的buffers的大小

        cached:表示当前使用的cached的大小

buffers和cached的区别:
    ①buffers和cached都是内存的一部分
    ②buffers是内存与磁盘之间的,当对磁盘进行读写操做时,内存先将数据缓存到buffers中,而后再写入磁盘;cached是cpu和内存之间的,cached是缓存读取过的内容,下次再读时,若是在缓存中命中,则直接从缓存读取,不然读取磁盘。

      swap

        si:表示从磁盘读入到虚拟内存的大小

        so:表示从虚拟内存写入到磁盘的大小

若是si和so长期不为0,表示系统内存不足;而若是swpd的值长期不为0,但si和so的值长期为0,则无需担忧

      io

        bi:表示从磁盘读取数据的总量

        bo:表示写入磁盘的数据总量

      system

        in:表示系统中断数

        cs:表示每秒产生的上下文切换次数

in和cs的值越大,内核消耗cpu时间越大

      cpu

         us:用户进程消耗的cpu时间所占百分比

         sy:内核进程消耗的cpu时间所占百分比

          id:cpu空闲状态的时间百分比

          wa:表示IO等待所占用的cpu时间百分比

us+sy+id=100

----------------------------------------------------------------------------------------------------------------------------------------

2、sar命令

 sar命令能够获取系统的cpu、磁盘、内存、网络运行状态等信息

常见用法有

wKioL1fRYlfBJLrpAACeoAJBdNQ873.png


wKioL1fRZEuyIWGfAACLl-p991s993.png


wKiom1fRYsChqXfmAAEyJ34GI34413.png


wKiom1fRY0qgYCeTAACuzI4zLzU206.png

wKiom1fRY6KSYll-AADncA2nXuk354.png

注意要点:

    -u表示查看系统cpu总体的使用状态,-P能够分开查询每一个cpu的使用状况,其中对cpu的计数是从0开始的


--------------------------------------------------------------------------------------------------------------------------------

3、iostat

能够对系统磁盘的IO操做进行监控,同时也能够输出显示cpu的使用状况

语法:

iostat options [interval [count]]
options 说明
-c 显示cpu的使用状况
-d 显示磁盘的使用状况
-k 表示以KB为单位显示数据
-x device 指定要统计的磁盘设备

wKiom1fRZnjxmJjWAABLdaiZp8Y728.pngKB_read/s:表示每秒读取的数据块数量

KB_wrtn/s:表示每秒写入的数据块数量

KB_read:表示总共读的数据块数量
KB_wrtn:表示总共写的数据块数量

-----------------------------------------------------------------------------------------------------------------------

4、netstat

    能够显示网络链接、端口状态和路由表等信息

语法:netstat [options]

常见option 说明
-a 显示全部的链接和监听的端口
-r 显示路由信息
-t 显示tcp链接
-u 显示udp链接
-l 显示链接状态为LISTEN的链接
-p

显示链接对应的PID

-n 以IP和端口的形式显示链接

比较常见用法:

netstat -plnt
netstat -puln
netstat -r

------------------------------------------------------------------------------------------------------------------------------------

5、free

    监控linux内存的使用状况

wKioL1fRaCrARYk9AAAqKn_RmEE318.png

---------------------------------------------------------------------------------------------------------------------------

6、uptime

    能够查看系统的启动时长和cpu的负载状况

wKioL1fRaNPQMsEBAAAb76HZRy4243.png

系统如今时间    启动时长   登陆用户数量      1分钟内的平均负载  5分钟内的平均负载   15分钟内的平均负载

注意:load average的三个输出值若是大于系统逻辑cpu数量时,表示cpu繁忙,会影响系统性能

 -------------------------------------------------------------------------------------------------------------------------

相关文章
相关标签/搜索