zoukankan      html  css  js  c++  java
  • Linux系统性能查询命令

    top命令(整机)

    可以查看进程的cpu占用率,和内存占用率。uptime 是top的精简版只看整机,不看各进程。

    load average: 0.00, 0.00, 0.00  表示系统1分钟,5分钟,15分钟的负载值,如果三个数平均值大于0.6,说明系统负载较高。

    vmstat(CPU):

    例如vmstat  -n 2 3  每2秒采样一次,采样3次

    — proce r:表示运行和等待CPU时间片的进程数,原则上1核的运行队列不要超过2,整个系统的运行队列不能超过核数的2倍。b:表示等待资源的进程数,比如正在等待磁盘I/O,网络I/O等。

    — cpu  us:用户消耗CPU时间百分比,us值高,用户消耗CPU时间多,如果长期大于50%需要优化程序。 sy:内核消耗进程的CPU时间百分比。us+sy大于80%,说明可能CPU不足。

    pidstat(CPU):

    mpstat -P ALL 2     查看所有CPU核信息

    pidstat -u 1 -p 进程号    查看进程使用CPU的用量分解信息

    pidstat -p 进程号  -r 秒数   查看进程内存的占用率 每几秒采样一次

    pidstat -d 2 -p 进程号    查看进程磁盘占用情况

    free(内存):

    free -m 查看系统内存单位M

    df(硬盘):

    df -h  查看硬盘占用空间

    iostat(磁盘IO):

    iostat -xdk 2 3  查看磁盘快设备分布

    rKB/s wKb/s 表示每秒读写量,svctm I/O await I/O分别表示请求的平均服务时间和等待时间,单位毫秒 值接近说明没有等待磁盘性能好。

    ifstat(网络IO):

    ifstat  查看网络IO情况

    CPU占用过高案例排查分析:

    1 用top命令查找出CPU占比最高的进程 id

    2 ps -ef 或者jps进一步定位,得知哪个后台程序

    3 ps -mp 进程号 -o  THREAD,tid, time    定位到具体线程

    4 将需要的线程ID转换为16进制格式(英文小写格式)

    5 jstack 进程ID | gep tid(16进制线程ID小写字母) -A60  查看线程出现问题的代码日志

  • 相关阅读:
    regex
    ubuntu 14.04 更新 gcc/g++ 4.9.2
    然而我又更新博客了。
    我一万年也不更新一次博客
    区块链
    mongodb查看数据库和表的信息
    js高级总结
    es6 新特性
    Flex 布局教程:实例篇
    常用 Git 命令清单
  • 原文地址:https://www.cnblogs.com/dream2true/p/10878536.html
Copyright © 2011-2022 走看看