Я реализую apc на общем сервере, на котором в настоящее время насчитывается 1000 сайтов (с использованием wordpress, moodle и т. Д.). Я ищу страницу администратора и вижу, что "Кэш заполнен" быстро растет. Я пробовал увеличить значение «apc.shm_size», уменьшить значение «apc.ttl», увеличить значение «apc.shm_segments», но я не могу решить эту проблему. Что я делаю не так? Записываю некоторую информацию:
apc.ini:
extension = apc.so
apc.shm_size = 256
apc.enabled = 1
apc.ttl = 300
apc.user_ttl = 300
Ubuntu: 12.04
PHP: 5.3.10
APC: 3.1.7
На сервере 16 ГБ памяти
Ограничение общей памяти: 256 МБ
Есть ли возможность не очистить кеш при достижении 100%?
Попробуйте настроить свой apc.gc_ttl к чему-то низкому, например 600, а ваш apc.max_file_size, который является самым большим размером, который APC будет кэшировать, примерно до 2M.
apc.gc_ttl = 600
apc.max_file_size = 2M
Кроме того, как указал Майкл, 256 МБ на 1000 сайтов действительно довольно мало.
Сначала попробуйте увеличить apc.shm_size
предел.
apc.shm_size = 2048M
Если вы достигли предела общей памяти ядра, что может быть связано, но не всегда, попробуйте увеличить apc.shm_segments
.
apc.shm_segments = 10
apc.shm_size = 256M
apc.max_file_size = 2