OPCache PHP
OPCache – это расширение PHP, созданное для повышения производительности PHP и повышения общей производительности приложений.
Как работает OPCache?
PHP открывает файл с кодом, компилирует его, выполняет. Если файлы не меняются, что бы постоянно не выполнять эти действия opCache кэширует результат. Таким образом экономятся ресурсы сервера.
Установка расширения OPCache
Установим репозитории EPEL и REMI
[root@localhost]# yum update
[root@localhost]# yum install epel-release
[root@localhost]# yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
Установим приложение yum-utils для последующего выбора версии PHP
[root@localhost]# yum install yum-utils
Выберем версию PHP используя yum-config-manager
Selectel — ведущий провайдер облачной инфраструктуры и услуг дата-центров
Компания занимает лидирующие позиции на рынке на рынке выделенных серверов и приватных облаков, и входит в топ-3 крупнейших операторов дата-центров в России.
[root@localhost]# yum-config-manager --enable remi-php55 # Для PHP 5.5
[root@localhost]# yum-config-manager --enable remi-php56 # Для PHP 5.6
[root@localhost]# yum-config-manager --enable remi-php70 # Для PHP 7.0
[root@localhost]# yum-config-manager --enable remi-php71 # Для PHP 7.1
[root@localhost]# yum-config-manager --enable remi-php72 # Для PHP 7.2
[root@localhost]# yum-config-manager --enable remi-php73 # Для PHP 7.3
Теперь установим расширение Opcache и проверим версию PHP
[root@localhost]# yum install php-opcache
[root@localhost]# php -v
PHP 7.1.31 (cli) (built: Jul 31 2019 09:59:01) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.1.31, Copyright (c) 1999-2018, by Zend Technologies
Настройка расширения OPCache
Откроем файл настроек
[root@localhost]# nano /etc/php.d/10-opcache.ini
Пример настроек:
opcache.enable_cli = 1
opcache.memory_consumption = 128
opcache.interned_strings_buffer = 8
opcache.max_accelerated_files = 4000
opcache.revalidate_freq = 60
opcache.fast_shutdown = 1
Для применения настроек надо перезагрузить web-сервер (смотря какой у вас установлен)
[root@localhost]# systemctl restart nginx
[root@localhost]# systemctl restart php-fpm
[root@localhost]# systemctl restart httpd