L'un des langages de programmation les plus utilisés aujourd'hui par des millions d'utilisateurs est PHP, qui est utile et pratique pour le développement d'applications et peut être trouvé sur tous les serveurs d'hébergement Web disponibles aujourd'hui.
L'un des avantages de l'utilisation de PHP réside dans ses excellentes options pour utiliser diverses extensions dans leur distribution par défaut; avec lequel les utilisations de PHP pour le développement des applications sont étendues de manière progressive. L'une de ces extensions est OPcache, qui permet d'améliorer les performances globales de PHP.
C'est pour cette raison qu'aujourd'hui et à travers cette étude, Solvetic vous expliquera comment installer et configurer OPcache dans CentOS 7 pour être encore plus productif avec PHP.
Qu'est-ce qu'OPcache ?OPcache a été développé en cherchant à améliorer les performances de PHP en stockant le byte code d'un script précompilé dans une mémoire partagée, éliminant ainsi le besoin pour le langage PHP lui-même de charger et d'analyser les scripts dans chaque requête, ce qui est finalement traduit dans de meilleures performances .
OPcache est inclus dans PHP version 5.5.0 et versions ultérieures, et est disponible via PECL pour les versions PHP 5.2, 5.3 et 5.4.
Aucune bibliothèque externe n'est requise pour compiler cette extension PHP, elle est donc disponible pour toutes les distributions où PHP s'exécute sans problème.
1. Comment installer OPcache sur CentOS 7 Linux
Étape 1
Tout d'abord, nous allons installer le référentiel EPEL puis le référentiel REMI à l'aide des commandes suivantes :
yum install epel-release yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpmNous entrons la lettre s pour confirmer le téléchargement et l'installation.
AGRANDIR
Étape 2
Plus tard, nous devons accepter les clés GPG correspondantes :
AGRANDIR
Étape 3
L'étape suivante consiste à installer yum-utils, qui est une collection d'utilitaires pour étendre les fonctions par défaut de yum, grâce à eux, il sera possible de gérer les référentiels yum, ainsi que les packages sans configuration manuelle et bien d'autres tâches, pour leur installation, nous exécutons les opérations suivantes :
yum installer yum-utils
AGRANDIR
Étape 4
Plus tard, nous devons confirmer le téléchargement et l'installation des packages :
AGRANDIR
Étape 5
Maintenant, lorsque yum-utils a été installé, nous devons utiliser yum-config-manager pour activer le référentiel Remi comme référentiel par défaut pour installer différentes versions et modules de PHP, nous exécutons ce qui suit en fonction de la version souhaitée :
Pour PHP 5.5
yum-config-manager --enable remi-php55
Pour PHP 5.6
yum-config-manager --enable remi-php56
Pour PHP 7.0
yum-config-manager --enable remi-php70
Pour PHP 7.1
yum-config-manager --enable remi-php71
Pour PHP 7.2
yum-config-manager --enable remi-php72
AGRANDIR
Étape 6
Enfin, nous procédons à l'installation de l'extension OPcache et vérifions la version PHP afin de confirmer que l'extension OPcache est installée. Pour cela, nous utilisons les commandes suivantes. Nous acceptons le téléchargement et l'installation d'OPcache.
miam installer php-opcache
AGRANDIR
Étape 7
Nous vérifions la version de PHP et qu'il a OPcache. Notez le résultat avec Zend OPcache v7.0.5, cela indique qu'Opcache est correctement installé sur CentOS 7.
AGRANDIR
2. Comment configurer l'extension Opcache sur CentOS 7 Linux
Étape 1
La dernière étape consiste à configurer OPcache en éditant le fichier /etc/php.d/10-opcache.ini ou /etc/php.d/opcache.ini (selon le cas) avec notre éditeur souhaité :
nano /etc/php.d/opcache.iniLà, nous pouvons appliquer les valeurs suivantes pour obtenir de meilleures performances PHP :
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
AGRANDIR
Nous enregistrons les modifications à l'aide des clés suivantes :
Ctrl + O
On sort de l'éditeur à l'aide des touches suivantes :
Ctrl + X
Étape 2
Nous procédons au redémarrage du serveur Web en exécutant l'une des lignes suivantes :
systemctl redémarrer nginx OU systemctl redémarrer httpdDans le fichier opcache.ini se trouvent les variables suivantes avec leur utilisation respective :
Cette option active le cache d'opcode. Lorsqu'il est désactivé, le code n'est pas optimisé ou mis en cache
opcache.enable booléen
Cette option active le cache opcode pour la version CLI de PHP
opcache.enable_cli booléen
Gère la taille de la mémoire partagée utilisée par OPcache, en mégaoctets
opcache.memory_consumption entier
Sa fonction est de gérer la quantité de mémoire utilisée pour stocker les chaînes, en mégaoctets.
opcache.interned_strings_buffer entier
Votre tâche consiste à gérer le nombre maximum de clés dans la table de hachage OPcache, sa valeur minimum est de 200 et sa valeur maximum est de 100000 en PHP <5.5.6, et 1000000 dans les versions ultérieures.
opcache.max_accelerated_files entier
Fait référence au pourcentage maximal de mémoire gaspillée qui est autorisé avant qu'un redémarrage ne soit planifié sur l'extension.
opcache.max_wasted_percentage entier
L'activer permet à OPcache d'ajouter le répertoire de travail actuel à la clé de script, éliminant ainsi les collisions possibles entre les fichiers portant le même nom de base.
opcache.use_cwd booléen
Une fois activé, OPcache interrogera les scripts mis à jour toutes les opcache.revalidate_freq secondes.
opcache.validate_timestamps booléen
Mesure la fréquence de vérification des horodatages Unix des scripts basés sur les mises à jour, en secondes opcache.revalidate_path booléen : lorsqu'il est désactivé, les fichiers mis en cache existants qui utilisent le même include_path seront réutilisés par OPcache.
opcache.revalidate_freq entier
Lorsqu'elle est désactivée, tous les commentaires de documentation seront supprimés du cache de l'opcode afin de réduire la taille du code optimisé.
opcache.save_comments booléen
Avec son activation, une séquence d'arrêt rapide est créée qui est utilisée de manière à ne pas libérer chaque bloc alloué, mais dépend du gestionnaire de mémoire Zend Engine pour optimiser l'arrêt de PHP.
opcache.fast_shutdown booléen
C'est un bitmask qui contrôle quelles autorisations d'optimisation sont exécutées par OPcache
opcache.optimization_level entier
C'est un hack qui doit être activé pour fonctionner uniquement afin d'éviter les erreurs "Cannot redeclare class
opcache.dups_fix booléen
Indique la taille maximale du fichier qui sera mis en cache, en octets
opcache.max_file_size entier
Fait référence à la durée d'attente du début d'un redémarrage planifié si le cache n'est pas actif, en secondes
opcache.force_restart_timeout entier
Les journaux d'erreurs OPcache y sont stockés
chaîne opcache.error_log
C'est le modèle de mémoire principal qu'OPcache utilisera
chaîne opcache.preferred_memory_model
Votre tâche consiste à protéger la mémoire partagée des écritures inattendues lors de l'exécution de scripts
opcache.protect_memory booléen
Sa fonction est d'appeler les fonctions API OPcache uniquement à partir de scripts PHP dont le chemin commence par la chaîne spécifiée
chaîne opcache.restrict_api
Les fonctions générales d'OPcache sont
Il s'occupe de compiler et de mettre en cache un script PHP sans l'exécuter
opcache_compile_file
Obtient des informations de configuration sur le cache
opcache_get_configuration
Permet d'accéder aux informations d'état sur le cache
opcache_get_status
Invalider un script mis en cache
opcache_invalider
Indique si un script est mis en cache dans OPcache
opcache_is_script_cached
Permet de réinitialiser le contenu du cache opcode
opcache_reset
Comme on peut le voir, cette extension PHP sera utile pour améliorer significativement les performances de ce langage et ainsi fonctionner de manière beaucoup plus complète.