由于 Fast [关闭],APC 正常运行时间为 0

由于 Fast [关闭],APC 正常运行时间为 0

我有一个使用 Parallels/Plesk 的 VPS(11.0.9 更新 #22,最后更新于 2012 年 10 月 31 日 03:33 AM CentOS 6.3 (Final) x86_64)

我安装了 apache (CGI/FastCGI) 并使用 nginx 作为反向代理。一切运行正常。我安装了 APC 进行缓存,但问题是正常运行时间始终为 0。它每 15 秒左右重启一次。我到处都检查过了,但找不到解决方案。

服务器已启用宽限重启,但每 6 小时一次,这不会影响 APC 正常运行时间。在 Google 中搜索后,我发现这可能与 Apache 有关,它使用 FCGId 而不是 FastCGI 运行。Plesk/Apache 正在使用此配置文件:usr/local/psa/admin/conf/templates/default/service/php_over_fastcgi.php,其内容为:

<IfModule mod_fcgid.c>
<Files ~ (\.php)>
    SetHandler fcgid-script
    FCGIWrapper <?php echo $VAR->server->webserver->apache->phpCgiBin ?> .p$
    Options +ExecCGI
    allow from all
</Files>

问题出在这里还是其他地方?我该如何修复此问题以与 FastCGI 配合使用并使 APC 正常工作。我忘了说明,即使正常运行时间不到一分钟,APC 的缓存工作也相当不错(命中率为 92%)。

答案1

当 PHP_FCGI_MAX_REQUESTS 达到时,PHP 将死亡,然后会产生一个新的 PHP。您可以使用以下方法调整此数字:

DefaultInitEnv PHP_FCGI_MAX_REQUESTS 5000

答案2

这可能是由于 Fcgi 终止应用程序。根据您的负载(每小时的请求数),可能是 http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html#fcgidmaxrequestsperprocess

或者http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html#fcgididletimeout(我认为这更适合)

尝试增加此值以实现效果。

相关内容