Выдано 110639 лицензий

Настройка кэширования в APC

APC является наиболее рекомендуемым кэшером для HostCMS. Конфигурационный файл располагается чаще всего в /etc/php.d/apc.ini. Пример конфигурационного файла для сервера с 8 ГБ оперативной памяти:

extension=apc.so
apc.shm_segments = 1
apc.shm_size = 512M
apc.stat = 1
apc.ttl = 0
apc.user_ttl = 0
apc.max_file_size = 1M
apc.num_files_hint = 16384
apc.user_entries_hint = 16384
apc.file_update_protection=10

Описание основных атрибутов конфигурации APC

apc.shm_segments Количество выделяемых сегментов памяти. Многие BSD системы имеют низкие лимиты на выделяемый сегмент памяти. По умолчанию 1.
apc.shm_size Размер сегмента совместно используемой памяти, устанавливается в мегабайтах. Минимально мы рекомендуем устанавливать 128M, для сервера с 8Гб - 512M, с 16Гб - 1024M. В случае использования нескольких сегментов, размер памяти необходимо делить на количество сегментов.
apc.stat С помощью этой опции можно отключать и включать APC. Значение 1 - включено, 0 - выключено.
apc.ttl Время кэширования php-файлов. При установке в 0 позволяет очищать кэш целиком в случае заполнения выделенной памяти.
apc.user_ttl Время кэширования пользовательских данных. При установке в 0 позволяет очищать кэш целиком в случае заполнения выделенной памяти.
apc.max_file_size Максимальный размер кэшируемого файла.
apc.num_files_hint Используется APC для оптимизации организации хранения данных файлов в памяти. Рекомендуем устанавливать значение больше 10000.
apc.user_entries_hint Используется APC для оптимизации организации хранения пользовательских переменных в в памяти. Рекомендуем устанавливать значение больше 10000.
apc.file_update_protection Не кэшировать файлы, созданные менее указанных секунд назад. Позволяет избежать кэширования частично-записанного файла.

Ошибка Unable to allocate memory for pool

Ошибка include(): Unable to allocate memory for pool возникает при сильной фрагментации памяти, минимизировать фрагментацию памяти помогает установка в ноль значения опции apc.ttl и apc.user_ttl.