Apache使用100%CPU。“ ps”命令可以告诉我它在做什么吗?


8

我有一台SLES 10 Linux服务器,有时Apache将其最大化为100%CPU。

随着ps ax我所看到的,阿帕奇已经催生〜50个Apache进程。

例如,该ps命令能否告诉我这些Apache进程中的每个进程在做什么?

也许还有其他方法可以让我看到触发该问题的网页?

Answers:


14

我的/etc/httpd/conf/httpd.conf文件包含以下部分:

# Allow server status reports generated by mod_status,
# with the URL of http://servername/server-status
# Change the ".example.com" to match your domain to enable.
#
<Location /server-status>
    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow from .example.com
    Allow from 127. 192.168.1.
</Location>

因此,如果我转到http://192.168.1.1/server-status,则会得到一个页面,告诉我:

  1. 服务器版本
  2. httpd正常运行时间
  3. 当前的CPU使用率
  4. 正在处理的请求数和空闲工人数

  5. 每个过程在做什么的网格
  6. 最近的要求

    192.168.3.1的Apache服务器状态

    服务器版本:Apache / 2.2.3(Red Hat)
    服务器内置:2009年7月14日06:04:04

    当前时间:2010年7月17日星期六10:20:31 CDT
    重新启动时间:2010年7月17日星期六10:13:12 CDT
    父服务器生成:0
    服务器正常运行时间:7分钟19秒
    总访问次数:51-总计流量:156 kB
    CPU使用率:u0 s0 cu0 cs0
    .116请求/秒-363 B /秒-3132 B /请求
    1当前正在处理的请求,7个空闲工人

    __W _____........................................ .......
    ............................................................. .....................
    ............................. ...................................
    ............... ..................................................................

    记分板键:
    “ _”等待连接,“ S”正在启动,“ R”正在阅读请求,
    “ W”正在发送回复,“ K” Keepalive(已读),“ D” DNS查找,
    “ C”正在关闭连接,“ L” “日志记录,” G“优美地完成,
    ” I“空闲清理工人”。没有当前进程的开放插槽

    Srv PID Acc M CPU SS Req Conn子插槽客户端VHost请求
    0-0 20715 0/2/2 _ 0.00418 0 0.0 0.01 0.01 192.168.3.97 dit GET / server-status HTTP / 1.1
    1-0 20716 0/49/49 _ 0.00 128 0 0.0 0.15 0.15 192.168.3.97 dit GET /服务器状态HTTP / 1.1
    2-0 20717 0/0/0 W 0.00 0 520222374 0.0 0.00 0.00 192.168.3.97 dit GET /服务器状态HTTP / 1.1


您可能需要设置 ExtendedStatus ON以查看每个请求
TonyUser 2010年


2

如果您的网站带有数据库后端,则可以在DBMS中查看当前正在运行哪些命令。也许这可以帮助您缩小在网站代码中生成负载的位置。

否则,您可以增加httpd守护程序的日志级别。然后,您将在日志中获得更多信息。


1

还有ltrace,其作用类似于strace,但可用于库调用。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.