【发布时间】:2011-12-28 02:13:36
【问题描述】:
我已迁移到速度更快的新服务器。旧服务器在经过一些严重的调整后可以很好地处理网站,但新服务器虽然有额外的 2gigs 内存(总共 4 个),但在经过 2 天的各种调整后响应请求的速度非常慢。我在 FastCGI 模式下运行 PHP,错误日志中充满了以下错误:
mod_fcgid: can't apply process slot for /var/www/cgi-bin/cgi_wrapper/cgi_wrapper
还有一些
mod_fcgid: read data timeout in 200 seconds
CPU 徘徊在 40%,产生了大约 80 个进程,网站超级慢,我尝试调整 fcgid.conf 但无济于事:
LoadModule fcgid_module modules/mod_fcgid.so
<IfModule mod_fcgid.c>
<IfModule !mod_fastcgi.c>
AddHandler fcgid-script fcg fcgi fpl
</IfModule>
FcgidIPCDir /var/run/mod_fcgid/sock
FcgidProcessTableFile /var/run/mod_fcgid/fcgid_shm
FcgidIdleTimeout 200
FcgidProcessLifeTime 1000
FcgidMaxProcesses 5
FcgidMaxProcessesPerClass 10
FcgidMinProcessesPerClass 0
FcgidConnectTimeout 8
FcgidIOTimeout 200
FcgidInitialEnv RAILS_ENV production
FcgidIdleScanInterval 20
FcgidMaxRequestsPerProcess 500
FcgidBusyTimeout 300
</IfModule>
有什么建议吗?
编辑: 最佳结果
Tasks: 94 total, 1 running, 93 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.1%us, 0.0%sy, 0.0%ni, 99.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 5379200k total, 1765840k used, 3613360k free, 0k buffers
Swap: 0k total, 0k used, 0k free, 0k cached
93在睡觉????
【问题讨论】:
-
监控连接,而不是你在服务器限制上运行,看起来你的连接用完了。
-
我还注意到进程正在缓慢回升,现在为 100