linux服务器load average飚的很高,但是cpu和内存还可以,这是怎么回事呢

发布于 2022-09-01 18:09:05 字数 221 浏览 31 评论 0

top后发现load average很高,网站几乎打不开了
如下图:

clipboard.png
这是怎么回事呢 我该怎么办,本人对服务器不太懂,主要是做php开发

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

穿透光 2022-09-08 18:09:05

man uptime可见:
load average指的是处于task_running或task_uninterruptible状态的进程(或线程)数的平均值.
处于task_running状态的进程(或线程),可能正在使用CPU或排队等待使用CPU.
处于task_uninterruptible状态的进程(或线程),可能正在等待I/O,比如等待磁盘I/O.
183 116 82 这三个值分别指的是在过去1分钟,5分钟,15分钟的load average.
拿183来说,就是在过去1分钟,平均有183个任务(进程或线程)处于running或uninterruptible状态.

我的Xubuntu14.04桌面,总共的任务数(进程或线程)才189个,而你的服务器居然有4355个.而且在过去1分钟平均有183个处于运行或不可中断状态,而我的电脑这个平均值小于1.

另外你的13.6 wa这个值也比较高,这个值的含义是I/O等待占用的CPU时间百分比,也就是I/O等待占用了13.6%的CPU资源.

32.5 sy为内核空间占用CPU时间百分比为32.5%,而4.8 us用户空间程序占用CPU时间百分比却只有4.8%,这点也不正常.

建议用atop -d(按t刷新)或iotop找出哪些进程正在读写磁盘,如果是PHP,那就把PHP的进程数调低,可以尝试调为2倍CPU核心数(nproc).因为当CPU和磁盘都忙不过来的时候,开再多的进程也没有任何意义,只会徒增CPU上下文切换和磁盘I/O等待,得不偿失.

无名指的心愿 2022-09-08 18:09:05

没人回答 我都纠结死了

泛滥成性 2022-09-08 18:09:05

应该是硬盘IO问题,是不是很多写文件的操作?

玉环 2022-09-08 18:09:05

有线程没有释放,可能有死循环

清泪尽 2022-09-08 18:09:05

你把信息写的具体一点,这样没法回答的

可以使用以下利器

ps -aux | sar -P ALL 1 100  | top | strace -p pid | iowait | gdb 

这样方便找出原因的

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文