日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

centos中如何找出系统中 load 高时处于运行队列的进程

發布時間:2025/1/21 windows 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 centos中如何找出系统中 load 高时处于运行队列的进程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
如何用腳本統計出來處于運行隊列的進程呢?

#1.查看進程的狀態

如何把這個腳本在centos創建并運行呢?

vi cpustatus.sh

然后把腳本內容復制上去,每隔 1s 統計一次:

#!/bin/bash LANG=C PATH=/sbin:/usr/sbin:/bin:/usr/bin interval=1 length=86400 for i in $(seq 1 $(expr ${length} / ${interval}));do date LANG=C ps -eTo stat,pid,tid,ppid,comm --no-header | sed -e 's/^ \*//' | perl -nE 'chomp;say if (m!^\S*[RD]+\S*!)' date cat /proc/loadavg echo -e "\n" sleep ${interval} done

最后,設置文件作為可執行程序。

chmod +x cpustatus.sh

以后只要通過./cpustatus.sh就可以執行該腳本了。執行后,如果想退出,可以通過Ctrl+z命令就可以進行退出了。

從統計出來的結果可以看到: 在 load 比較高的時候,有大量的 nginx 處于 R 或者 D 狀態,他們才是造成 load 上升的元兇,和我們底層的負載確實是沒有關系的。

#2.CPU 使用率比較高的線程

同上,創建一個cpu.sh腳本,然后通過下面這段腳本

#!/bin/bash LANG=C PATH=/sbin:/usr/sbin:/bin:/usr/bin interval=1 length=86400 for i in $(seq 1 $(expr ${length} / ${interval}));do date LANG=C ps -eT -o%cpu,pid,tid,ppid,comm | grep -v CPU | sort -n -r | head -20 date LANG=C cat /proc/loadavg { LANG=C ps -eT -o%cpu,pid,tid,ppid,comm | sed -e 's/^ *//' | tr -s ' ' | grep -v CPU | sort -n -r | cut -d ' ' -f 1 | xargs -I{} echo -n "{} + " && echo '0'; } | bc -l sleep ${interval} done fuser -k $0 微信掃一掃:關注我個人訂閱號“猿小飛”,更多精彩文章在這里及時發布:

?

總結

以上是生活随笔為你收集整理的centos中如何找出系统中 load 高时处于运行队列的进程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。