即使 apc.user_ttl = 0,APC + PHP-FPM 内存仍然碎片化

即使 apc.user_ttl = 0,APC + PHP-FPM 内存仍然碎片化

我正在运行5.3.9-1~dotdeb.3APC 3.1.9运行 2 小时后,APC 缓存完全碎片化了。难道不应该 apc.user_ttl = 0 将文件保留在缓存中直到 APC 重新启动 - 并防止产生这么多碎片吗?我做错了什么?

apc.enabled = 1
apc.shm_segments = 1
apc.shm_size = 320M
apc.cache_by_default=1
apc.stat = 0
apc.user_ttl = 0
apc.num_files_hint = 1024
apc.mmap_file_mask = /tmp/apc.XXXXXX
apc.enable_cli = 0

以下是屏幕截图:

在此处输入图片描述

答案1

您是否也将内核shmmax参数提升至服务器共享内存 320M?默认情况下约为 8MB。

将以下内容放入/etc/sysctl.conf

kernel.shmmax = 335544320

并执行

sysctl -p

以 root 身份运行。

相关内容