#Что означает ошибка
OPcache full
Правильные параметры OPcache (memory_consumption, max_accelerated_files) ускоряют сайт и снижают нагрузку. Проверьте статистику и увеличьте лимит.
#Причины и признаки
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Малая память | Переполнение. Проверьте фактическое потребление памяти и наличие места для временных файлов в момент сбоя. | Увеличьте. |
| Мало файлов | Перезапуск. Сверьте точное имя и расположение файла; попробуйте действие на копии без изменения исходника. | Увеличьте. |
| Частые деплои | Прочитайте относящуюся к этому компоненту запись в журнале до изменения конфигурации. | Планируйте. |
| Выключен | Прочитайте относящуюся к этому компоненту запись в журнале до изменения конфигурации. | Включите. Посмотрите соответствующие настройки и журнал сервиса. |
#Пошаговое решение
- Проверьте статистикуУточните через панель хостинга либо временную закрытую страницу
phpinfo()фактическую версию веб-PHP и включён ли OPcache. Не ориентируйтесь только наphp -v: командный интерпретатор может использовать другую конфигурацию. По окончании проверки удалите временную диагностическую страницу. - Увеличьте memory_consumptionВ конфигурации именно используемого PHP-FPM изучите
opcache.enable,opcache.memory_consumption,opcache.interned_strings_bufferиopcache.max_accelerated_files. Сравните их с размером приложения и фактическими показателями OPcache; без измерений не увеличивайте память и не задавайте одинаковые значения всем сайтам. - ПерезапуститеЕсли приложение активно обновляется, проверьте
opcache.validate_timestampsиopcache.revalidate_freqи способ сброса кэша при публикации новой версии. Выключение проверки времени ради скорости может оставить старый PHP-код после обновления; допускается лишь при дисциплинированном развёртывании с явным сбросом кэша. - Проверьте альтернативу: выключенСохраните прежние настройки и измените только параметры, для которых найдены признаки нехватки кэша либо неэффективности. После проверки конфигурации и согласованного перезапуска нужного PHP-FPM измерьте время ответа, потребление памяти и показатели попаданий в OPcache; при ухудшении верните настройки.
#Проверка результата
Для «PHP-FPM + OPcache: настройка памяти и производительности» выполните штатную проверку конфигурации, затем один контрольный запрос к сервису. Сверьте его результат с журналом и убедитесь, что пользователи не получили новых ответов 4xx или 5xx после изменения.