Zend Opcache – это расширение PHP, предназначенное для повышения производительности PHP, сокращения времени загрузки веб-страниц и уменьшения нагрузки на сервере.
Производительность достигается путем компиляции кода PHP файлов при первом обращении к ним. В результате при следующем доступе сервер не тратит ресурсы на повторное чтение и компиляцию php файла, а отдает готовый результат из кэша opcache. Т.е. opcache дает хорошие результаты для cms/файлов php скриптов, код которых редко изменяется.
В данной статье мы рассмотрим установку расширения OPcache , его настройку и использование с веб-сервером apache на примере Linux CentOS.
Перед установкой самого расширения, нужно подключить репозитории EPEL и remi , а затем обновить пакеты на сервере с помощью yum (dnf):
# dnf install epel-release -y
# dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y
# dnf update -y
Теперь можно установить opcahce для php:
# dnf install php-opcache -y
На этом установка расширения OPcache завершена.
Конфигурационный файл OPCache находится в директории /etc/php.d . Откройте его и очистите от стандартных записей:
# nano /etc/php.d/10-opcache.ini
Добавьте следующие универсальные настройки, которые подходят для большинства php проектов:
zend_extension=opcache.so_x000D_opcache.enable=1_x000D_opcache.memory_consumption=512_x000D_opcache.interned_strings_buffer=512_x000D_opcache.max_accelerated_files=100000_x000D_opcache.max_wasted_percentage=1_x000D_opcache.validate_timestamps=1_x000D_opcache.revalidate_freq=0_x000D_opcache.fast_shutdown=1_x000D_opcache.save_comments=1_x000D_opcache.load_comments=1_x000D_opcache.blacklist_filename=/etc/php.d/opcache*.blacklist
После сохранения файла php.d перезапустите веб-сервера. В моем случае это apache:
# service httpd restart
Проверьт, что модуль Zend OPcache Engine подключён:
# php -v
Модуль успешно подключен. Рассмотрим опции, которые мы исопльзовали в конфигурационном файле:
zend_extension=opcache.so
– подключение модуля расширения opcache.enable=1
— включение/отключение OPcache opcache.memory_consumption=512
– размер памяти для хранения кэша opcache.interned_strings_buffer=512
— размер памяти для пула строк opcache.max_accelerated_files=100000
— максимальное количество ключей в хэн-таблице OPcache opcache.max_wasted_percentage=1
– максимальный процент потерянной памяти, после которой планируется перезапуск opcache.validate_timestamps=1
— включение возможности обнуления вручную или рестартом веб-сервера(регулируется opcache.validate_timestamps) opcache.revalidate_freq=0
— промежуток, через который будет выполнена проверка изменения временных меток, для поддержания актуальности данных, 0 — постоянная проверка, любое другое значение количество секунд opcache.fast_shutdown=1
— если параметр включен, то будет использована быстрая последовательность перезагрузки, при которой не происходит очистки всех выделенных блоков памяти. opcache.save_comments=1
— если выключено, все комментарии будут отброшены из кеша опкодов для минимизации размера кода. opcache.load_comments=1
— если выключено, то комментарии PHPDoc не будут загружаться из общей памяти. opcache.blacklist_filename=/etc/php.d/opcache*.blacklist
— местоположение списка php файлов, который OPcache должен пропускать. Файл содержит имена файлов, которые не нужно оптимизировать, по одной записи на строку. Допустимы шаблоны поиска и префиксы. Строки, начинающиеся с точки с запятой игнорируются Более детальную настройку можно выполнить согласно официальной документации по OPcache .
Использование OPcache на сервере обеспечит экономию ресурсов и сократит время загрузки страниц сайта, но есть и другие факторы по которым важно использовать данное расширение:
В работе с различными CMS, мы заметили, что почти с любым сайтом, можно добиться хорошего результата в производительности: Использование памяти и время загрузки популярных CMS сокращается в 2-3 раза.
А если речь идет о CMS Bitrix, то ее разработчики настоятельно рекомендуют подключение данного расширения и при замерах производительности, тест сразу показывает, подключен у вас OPcache или нет.
Экспериментируйте с настройками Opcache, уменьшая или увеличивая различные параметры, выполните тонкую настройку для своего сайта исходя из ресурсов сервера, тем самым вы добьетесь отличных результатов в производительности. Модуль Opcache также можно использовать в связке NGINX + PHP-FPM .
Некоторые пользователи, экспериментируя с конфигурацией системы в окне msconfig могут столкнуться с ситуацией, когда после…
На сайте не раз публиковались обзоры программ, предназначенных для очистки или настройки последних версий Windows.…
При установке некоторых обновлений Windows 11, имеющих в названии «Предварительный просмотр накопительного обновления», многие пользователи…
Некоторые пользователи Windows 11, 10 и предыдущих версий системы могут столкнуться с ситуацией, когда исполняемые…
При установке обновлений Windows 11/10 некоторые пользователи могут столкнуться с ошибкой с кодом 0x800705b4 и…
Пользователи Windows 11 могут столкнуться с сообщением «Обслуживание вашей версии Windows окончено» (Your version of…