APC 内存池和 Apache 问题

APC 内存池和 Apache 问题

我的 APC 和 Apache 有问题。自从我在 VPS 上安装了 APC 后,我就遇到了很多问题。以下是其中之一。

我的 Apache 一直崩溃,服务器端口:80 可用,但它给我错误消息。

我的配置:/etc/php5/conf.d/apc.ini

extension=apc.so
apc.shm_size=30
apc.shm_segments=1
apc.write_lock = 1
apc.rfc1867 = On
apc.ttl=7200
apc.user_ttl=7200
apc.num_files_hint=1024
apc.mmap_file_mask=/dev/zero
apc.enable_cli=1

Apache 日志中的错误:

    [Tue Mar  4 13:49:42 2014] [apc-error] apc_mmap: mmap failed: Cannot allocate memory
    [Tue Mar  4 13:49:47 2014] [apc-error] apc_mmap: mmap failed: Cannot allocate memory
    [Tue Mar  4 13:49:47 2014] [apc-error] apc_mmap: mmap failed: Cannot allocate memory
    [Tue Mar  4 13:48:39 2014] [apc-warning] Unable to allocate memory for pool. in /var/www/vhosts/xxx.com/xxx/application/libraries/Engine/Loader.php on line 103.

我不知道为什么我会遇到这个问题,当我在 APC.ini 中定义了 apc.shm_size 时。

答案1

-> PHP Version 5.3.3-7+squeeze18
-> APC Version  3.1.3p1
->      total       used       free     shared    buffers     cached
Mem:     4096       2699       1396          0          0     1205


在我将 apc.ini 设置为如下形式后,我的 Apache 错误日志现在很干净:

extension=apc.so
apc.shm_size=96
apc.shm_segments=1
apc.write_lock = 1
apc.rfc1867 = On
apc.ttl=3600
apc.user_ttl=3600
apc.gc_ttl=3600
apc.num_files_hint=1024
apc.mmap_file_mask=/tmp/apc.XXXXXX
apc.enable_cli=1

我认为问题使 apc.mmap_file_mask 和 shm_size 增加,但没有问题。现在我的 apache 干净了。

相关内容