我看到一些间歇性的 CPU 使用率飙升至 100%,有点与这些日志条目相关:
[27-Feb-2012 13:29:29] PHP Fatal error: PHP Startup: apc_mmap: mmap failed: in Unknown on line 0
[27-Feb-2012 13:29:30] PHP Fatal error: PHP Startup: apc_mmap: mmap failed: in Unknown on line 0
[27-Feb-2012 13:29:31] PHP Fatal error: PHP Startup: apc_mmap: mmap failed: in Unknown on line 0
[27-Feb-2012 13:29:31] PHP Fatal error: PHP Startup: apc_mmap: mmap failed: in Unknown on line 0
phpinfo() 表示已设置 APC,据我所知,此错误不会导致实时站点上出现可见的 500 个错误,该站点是 WordPress 安装,每月浏览量约为 60 万次。到目前为止,Google 还没有提供帮助,我希望这里有人能了解导致此问题的原因以及如何修复它。奇怪的是,此错误仅显示 /usr/local/apache2/logs/error_log,而不显示 cpanel 配置站点的 error_log。
答案1
如果这没有导致网站上出现可见的错误,那么它一定是在 Apache 子进程创建过程中发生的太早,以至于在错误发生之前没有请求被传输到子进程。Google 搜索错误消息显示 (http://www.litespeedtech.com/support/forum/showthread.php?t=4242)您的APC配置不正确,您应该检查以下配置参数:
apc.enabled = 1
apc.shm_size = 48 ;; MB, make sure that this is allowed by the system
apc.include_once_override = 1 ;; test both values
apc.mmap_file_mask = /tmp/apc.XXXXXX ;; verify mask if you use file backed storage
我猜测某些 APC 进程请求的 SHM mmap 内存比内核或系统配置愿意提供的要多。