首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么我的apache2,mod_fcgid,php配置会导致100%的cpu使用率?

为什么我的apache2,mod_fcgid,php配置会导致100%的cpu使用率?
EN

Server Fault用户
提问于 2011-01-11 03:58:04
回答 3查看 2.6K关注 0票数 0

页面加载完成一个快速的初始连接,然后在页面呈现之前挂起大约10秒。当服务器负载增加时,我开始查看top &我看到两个CPU有时都被php的4-8个进程固定在100%之间。我的理论是,由于我从未见过RAM使用率超过50%,所以apache能够处理传入的请求,但正在排队等待PHP处理。我的mod_fcgid/php配置有什么问题?

RHEL 5.4

2 Xeon E5420s @ 2.50 Ghz

4 Gb RAM

Apache 2.2.3

超时30

KeepAlive打开

MaxKeepAliveRequests %0

KeepAliveTimeout 5

<IfModule worker.c>

StartServers 2

MaxClients 300

MinSpareThreads 25MaxSpareThreads 75

ThreadsPerChild 25

MaxRequestsPerChild 0

</IfModule>

mod_fcgid 2.2.10

LoadModule fcgid_module模/mod_fcgid.so

<IfModule !mod_fastcgi.c>

AddHandler fcgid-script fcg fcgi fpl php

</IfModule>

SocketPath run/mod_fcgid

SharememPath run/mod_fcgid/fcgid_shm

DefaultInitEnv PHPRC "/etc/“

FCGIWrapper /usr/bin/php-cgi .php

MaxRequestsPerProcess 1500

MaxProcessCount 20

IPCCommTimeout 240

IdleTimeout 240

装甲运兵车3.0.19

扩展= apc.so

apc.enabled=1

apc.shm_segments=1

apc.optimization=0

apc.shm_size=32

apc.ttl=7200

APC缓存为43%,命中率为99%。

EN

回答 3

Server Fault用户

发布于 2011-01-11 17:42:19

有几件事我要检查一下.

首先,您有什么输出到Apache错误日志中吗?您可能需要将日志级别提高到“警告”,以便查看CGI进程的输出。虽然在本例中,将其用于调试可能更有益处,因为apache将打印出与fcgi相关的日志记录信息。查看访问日志也可能有助于查看apache的返回403或500个代码。

第二,您正在尝试执行哪些PHP代码,以及如何测试它?虽然我希望看到更多的cgi进程,但在这方面可能会有一些进展。您是使用重脚本还是使用phpinfo();之类的简单内容?

票数 2
EN

Server Fault用户

发布于 2011-01-11 16:14:00

除了APC之外,您还有其他加速器(zend优化器、eAccelerator等)配置吗?当APC缓存和zend优化器都启用时,我也发生了类似的事情。很明显他们之间有冲突。

票数 0
EN

Server Fault用户

发布于 2011-01-11 16:18:47

您正在运行什么版本的PHP?您的内核是32位还是64位?

如果是,请看:http://www.theregister.co.uk/2011/01/04/weird_php_dos_外阴/

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/220959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档