操作系统:Debian 6.0 RAM:3072 M,CPU:单核。
最佳:
top - 08:56:43 up 21 days, 12:37, 1 user, load average: 28.38, 22.48, 15.95
Tasks: 8 total, 1 running, 7 sleeping, 0 stopped, 0 zombie
Cpu(s): 6.3%us, 14.7%sy, 0.0%ni, 17.5%id, 57.0%wa, 0.1%hi, 4.4%si, 0.0%st
Mem: 3145728k total, 28144k used, 3117584k free, 10236k buffers
Swap: 0k total, 0k used, 0k free, 0k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1247 root 20 0 18932 1240 1000 R 0 0.0 0:00.06 top
1 root 20 0 8356 724 676 S 0 0.0 7:41.97 init
3277 root 20 0 208m 11m 5652 S 0 0.4 0:00.17 apache2
3847 root 20 0 22420 1032 788 S 0 0.0 0:12.66 cron
8809 www-data 20 0 208m 7400 1168 S 0 0.2 0:00.00 apache2
26429 root 20 0 70488 3368 2652 S 0 0.1 0:00.80 sshd
26539 root 20 0 19300 2124 1564 S 0 0.1 0:00.16 bash
29551 root 20 0 49168 1152 604 S 0 0.0 0:00.12 sshd
Run Code Online (Sandbox Code Playgroud)
ps辅助:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 8356 724 ? Ss Jul23 7:41 init [2]
root 3277 0.0 0.3 213808 11828 ? Ss 08:17 0:00 /usr/sbin/apache2 -k start
root 3847 0.0 0.0 22420 1032 ? Ss Jul23 0:12 /usr/sbin/cron
root 5870 0.0 0.0 16332 1140 pts/10 R+ 08:58 0:00 ps aux
www-data 8809 0.0 0.2 213944 7400 ? S 08:32 0:00 /usr/sbin/apache2 -k start
root 26429 0.0 0.1 70488 3368 ? Ss 08:13 0:00 sshd: root@pts/10
root 26539 0.0 0.0 19300 2124 pts/10 Ss 08:13 0:00 -bash
root 29551 0.0 0.0 49168 1152 ? Ss Jul23 0:00 /usr/sbin/sshd
Run Code Online (Sandbox Code Playgroud)
如何找出导致问题的进程?一段时间后平均负载下降,但有人能帮我找到这种行为的原因吗?
更新:平均负载 233
top - 10:29:01 up 21 days, 14:09, 2 users, load average: 237.96, 183.80, 98.76
Tasks: 15 total, 1 running, 14 sleeping, 0 stopped, 0 zombie
Cpu(s): 9.3%us, 14.2%sy, 0.0%ni, 0.0%id, 72.0%wa, 0.0%hi, 4.6%si, 0.0%st
Mem: 3145728k total, 51408k used, 3094320k free, 10272k buffers
Swap: 0k total, 0k used, 0k free, 0k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 8356 724 676 S 0 0.0 7:44.70 init
2031 root 20 0 70592 3388 2652 S 0 0.1 0:00.14 sshd
2664 root 20 0 19300 2120 1556 S 0 0.1 0:00.02 bash
3277 root 20 0 210m 11m 5680 S 0 0.4 0:00.57 apache2
3847 root 20 0 22420 1032 788 S 0 0.0 0:12.70 cron
4041 www-data 20 0 211m 7792 1228 S 0 0.2 0:00.00 apache2
13767 root 20 0 32800 1112 812 S 0 0.0 0:00.01 cron
14742 smmsp 20 0 52508 3940 2632 D 0 0.1 0:00.00 sendmail
15769 root 20 0 69232 3092 2408 S 0 0.1 0:00.01 sshd
16154 www-data 20 0 211m 7716 1228 S 0 0.2 0:00.00 apache2
17260 sshd 20 0 50616 1372 728 S 0 0.0 0:00.00 sshd
18436 root 20 0 18932 1248 1004 R 0 0.0 0:00.02 top
26429 root 20 0 70488 3376 2652 S 0 0.1 0:01.11 sshd
26539 root 20 0 19300 2124 1564 S 0 0.1 0:00.29 bash
29551 root 20 0 49168 1152 604 S 0 0.0 0:00.14 sshd
Run Code Online (Sandbox Code Playgroud)
Mic*_*ton 13
您的服务器在 I/O 等待上花费了过多的时间。
57.0%wa
Run Code Online (Sandbox Code Playgroud)
这意味着...磁盘。
此问题的一个可能原因是您的 VPS 运行的服务器存在磁盘问题。这些问题包括但不限于: 出现故障的磁盘;使用非企业级磁盘;您的主机试图在创造性地回收硬件等上运行 VPS 业务。
也可能是您正在运行导致异常大量磁盘活动的进程。不幸的是,您top
或ps
列表中未报告该信息,这让我怀疑您使用的是基于 OpenVZ 的低端 VPS。(如果为真,您将回到上一段。)
至于解决问题,首先要做的是排除导致大量磁盘活动的任何进程。iotop
正如@Shi 所提到的,该程序对此很有用。虽然我敢打赌你什么也找不到。完成后,您然后联系主机以报告他们必须诊断的服务器磁盘的一些问题,因为它们是主机并且您无法从容器内看到它。
(后来,当您购买新的 VPS 提供商时,请避开任何使用 OpenVZ 的人。根据我的经验,其中绝大多数都运行得很糟糕。)
首先,试着理解下面这行:
Cpu(s): 6.3%us, 14.7%sy, 0.0%ni, 17.5%id, 57.0%wa, 0.1%hi, 4.4%si, 0.0%st
Run Code Online (Sandbox Code Playgroud)
您会看到用户空间应用程序 (%us) 的 CPU 几乎什么都不做。它忙于系统(内核)任务 (%sy),甚至更忙于等待 (%wa)。
等待通常意味着 I/O(输入/输出)等待。因此,请使用iotop
.
由于交换被禁用,交换不会导致这种情况。
归档时间: |
|
查看次数: |
1440 次 |
最近记录: |