Maison développement back-end PHP7 Conseils pour améliorer les performances de PHP7 à l'aide de l'extension OPcache

Conseils pour améliorer les performances de PHP7 à l'aide de l'extension OPcache

Feb 11, 2021 am 10:18 AM
opcache php7

PréfaceConseils pour améliorer les performances de PHP7 à l'aide de l'extension OPcache

Il est onze heures et demie, et il est il est temps de s'installer.

Lorsque PHP est en cours d'exécution, il existe un tel processus. Le code PHP est d'abord pré-compilé, le bytecode est généré puis chargé dans la mémoire. Enfin, le CPU exécute les octets compilés sur le. fragment de code de mémoire. Nous constaterons que lors de l'exécution d'un programme PHP, nous passons par un tel processus à chaque fois. Ce n'est pas une perte de temps. Oui, il est facile de penser : pourquoi ne pas suivre le langage C++ et compiler le code source dans un fichier qui. peut être directement chargé dans la mémoire, alors Où est mon frère ? Euh-hein ?. Sortez votre fusil et chargez cette balle . Depuis la sortie de PHP5.5.0, cette extension zend a été intégrée.


Qu'est-ce que OPcache

est une extension Zend en PHP qui peut grandement améliorer les performances de PHP.
OPcache améliore les performances de PHP en stockant le bytecode précompilé des scripts PHP dans la mémoire partagée. L'avantage du stockage du bytecode précompilé est qu'il évite la surcharge de chargement et d'analyse des scripts PHP à chaque fois.

OPcache


Jugez s'il a été étendu OPcache

➜  ~ php -m | grep OPcache
Zend OPcache
Zend OPcache
Copier après la connexion
S'il n'est pas activé, vous pouvez l'activer dans la configuration php.ini
/home /samego/service/php7.2/php.iniOPcache
➜  ~ echo zend_extension="opcache.so" >> /home/samego/service/php7.2/php.ini
Copier après la connexion


À propos de la configuration d'OPcacheEnsuite, nous devons activer OPcache dans PHP fichier de configuration (La valeur par défaut est désactivée) :

opcache.enable=1
Copier après la connexion
Continuons à faire quelques configurations d'optimisation pour OPcache :

opcache.memory_consumption=512
Copier après la connexion

Cette configuration indique l'espace mémoire (unité : Mo) que vous souhaitez allouer à OPcache , définissez Une valeur supérieure à 64 fera l'affaire.
opcache.interned_strings_buffer=64
Copier après la connexion

Cette configuration indique l'espace (unité : Mo) que vous souhaitez allouer à la chaîne réelle. Définissez simplement une valeur supérieure à 16.
opcache.max_accelerated_files=32531
Copier après la connexion

Cette configuration indique combien de scripts peuvent être mis en cache. Définissez cette valeur aussi proche que possible (ou supérieure) du nombre de scripts contenus dans le projet.

opcache.validate_timestamps=0
Copier après la connexion
Modifiez la valeur de configuration pour les scripts de revalidation. Si elle est définie sur 0 (meilleures performances), vous devez effacer manuellement l'OPcache après chaque modification du code PHP. Si vous ne souhaitez pas de purge manuelle, vous pouvez le définir sur 1 et configurer l'intervalle de revalidation via opcache.revalidate_freq, ce qui peut coûter certaines performances puisque les modifications doivent être vérifiées toutes les x secondes.

opcache.save_comments=1
Copier après la connexion
Cette configuration conservera les commentaires dans le script. Je recommande d'activer cette option car certaines bibliothèques dépendent de cette configuration et je ne trouve aucun avantage à la désactiver.

opcache.fast_shutdown=0
Copier après la connexion
L'arrêt rapide fournira un mécanisme d'effacement de la mémoire plus rapide, cependant, dans mes tests de référence, il était plus lent. Peut-être que cela apportera des améliorations de performances à l'application, mais vous devez l'essayer vous-même.

Donc, l'optimisation de la configuration finale ressemble à ceci :

opcache.enable=1
opcache.memory_consumption=512
opcache.interned_strings_buffer=64
opcache.max_accelerated_files=32531
opcache.validate_timestamps=0
opcache.save_comments=1
opcache.fast_shutdown=0
Copier après la connexion

Apprendre de la communauté Laravel

Laravel OPcache

installer你可以使用这些配置值进行实验,具体配置值取决于你的应用大小和服务器配置。

➜  ~ composer require appstract/laravel-opcache
Copier après la connexion


configurer

➜  ~ php artisan vendor:publish --provider="Appstract\Opcache\OpcacheServiceProvider" --tag="config"
Copier après la connexion
commande
  • # Clear OPcache:
    ➜  ~ php artisan opcache:clear
    
    # Show OPcache config:
    ➜  ~ php artisan opcache:config
    
    # Show OPcache status:
    ➜  ~ php artisan opcache:status
    
    # Pre-compile your application code:
    ➜  ~ php artisan opcache:optimize
    Copier après la connexion
  • Test de scénario Stand-and-see
  • Personnellement, j'aime que les données parlent
  • Scénario : (1) Demander l'interface GET (2) Le numéro des tests est de 10 (3) Le nombre de concurrence est de 100

1000 requêtes, prenant 32,32 secondes, 30,94 requêtes par seconde

Transactions:               1000 hits
Availability:             100.00 %
Elapsed time:              32.32 secs
Data transferred:           0.97 MB
Response time:              0.32 secs
Transaction rate:          30.94 trans/sec
Throughput:             0.03 MB/sec
Concurrency:                9.96
Successful transactions:        1000
Failed transactions:               0
Longest transaction:            0.44
Shortest transaction:           0.11
Copier après la connexion


1000 requêtes, en 2,94 secondes, 340,14 requêtes par secondecase non-extension

Transactions:               1000 hits
Availability:             100.00 %
Elapsed time:               2.94 secs
Data transferred:           0.97 MB
Response time:              0.03 secs
Transaction rate:         340.14 trans/sec
Throughput:             0.33 MB/sec
Concurrency:                9.86
Successful transactions:        1000
Failed transactions:               0
Longest transaction:            0.29
Shortest transaction:           0.01
Copier après la connexion

En voyant cet ensemble de données, je suis très heureux, extrêmement heureux. En termes de performances, il y a un contraste tellement fort que je ne dirai rien~OPcache a raison

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Vous avez un jeu croisé?
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Un article expliquant en détail le principe et l'utilisation de PHP opcache Un article expliquant en détail le principe et l'utilisation de PHP opcache Mar 22, 2023 pm 04:18 PM

Cet article vous apporte des connaissances pertinentes sur PHP opcache. Il explique principalement comment comprendre la fonction OPCache et comment l'utiliser. Les amis intéressés peuvent y jeter un œil ci-dessous.

Comment installer opcache dans centos php Comment installer opcache dans centos php Jan 19, 2023 am 09:50 AM

Comment installer opcache dans centos php : 1. Exécutez la commande "yum list php73* | grep opcache" ; 2. Installez opcache via "yum install php73-php-opcache.x86_64" ; 3. Utilisez "find / -name opcache. so" Trouvez simplement l'emplacement de "opcache.so" et déplacez-le vers le répertoire d'extension de php.

Comment installer l'extension mongo dans php7.0 Comment installer l'extension mongo dans php7.0 Nov 21, 2022 am 10:25 AM

Comment installer l'extension mongo dans php7.0 : 1. Créez le groupe d'utilisateurs et l'utilisateur mongodb ; 2. Téléchargez le package de code source mongodb et placez le package de code source dans le répertoire "/usr/local/src/" ; Entrez le répertoire « src/ » ; 4. Décompressez le package de code source ; 5. Créez le répertoire de fichiers mongodb ; 6. Copiez les fichiers dans le répertoire « mongodb/ » 7. Créez le fichier de configuration mongodb et modifiez la configuration.

Comment résoudre le problème lorsque php7 détecte que le port TCP ne fonctionne pas Comment résoudre le problème lorsque php7 détecte que le port TCP ne fonctionne pas Mar 22, 2023 am 09:30 AM

En php5, nous pouvons utiliser la fonction fsockopen() pour détecter le port TCP. Cette fonction peut être utilisée pour ouvrir une connexion réseau et effectuer certaines communications réseau. Mais en php7, la fonction fsockopen() peut rencontrer certains problèmes, comme ne pas pouvoir ouvrir le port, ne pas pouvoir se connecter au serveur, etc. Afin de résoudre ce problème, nous pouvons utiliser la fonction socket_create() et la fonction socket_connect() pour détecter le port TCP.

Que dois-je faire si le plug-in est installé dans php7.0 mais qu'il indique toujours qu'il n'est pas installé ? Que dois-je faire si le plug-in est installé dans php7.0 mais qu'il indique toujours qu'il n'est pas installé ? Apr 02, 2024 pm 07:39 PM

Pour résoudre le problème du plugin n'affichant pas installé dans PHP 7.0 : Vérifiez la configuration du plugin et activez le plugin. Redémarrez PHP pour appliquer les modifications de configuration. Vérifiez les autorisations du fichier du plugin pour vous assurer qu'elles sont correctes. Installez les dépendances manquantes pour garantir le bon fonctionnement du plugin. Si toutes les autres étapes échouent, reconstruisez PHP. D'autres causes possibles incluent des versions de plugin incompatibles, le chargement d'une mauvaise version ou des problèmes de configuration PHP.

Conseils d'optimisation pour la configuration d'OPcache dans l'optimisation des performances des applications PHP Conseils d'optimisation pour la configuration d'OPcache dans l'optimisation des performances des applications PHP May 01, 2024 am 09:03 AM

En optimisant la configuration d'OPcache, les performances des applications PHP peuvent être améliorées. L'optimisation comprend : définir une taille raisonnable de opcache.memory_consumption, augmenter la valeur de opcache.max_accelerated_files, activer opcache.revalidate_freq, désactiver opcache.optimization_level

Guide FAQ de l'environnement serveur PHP : résoudre rapidement les problèmes courants Guide FAQ de l'environnement serveur PHP : résoudre rapidement les problèmes courants Apr 09, 2024 pm 01:33 PM

Les solutions courantes pour les environnements de serveur PHP consistent à s'assurer que la version correcte de PHP est installée et que les fichiers pertinents ont été copiés dans le répertoire du module. Désactivez SELinux temporairement ou définitivement. Vérifiez et configurez PHP.ini pour vous assurer que les extensions nécessaires ont été ajoutées et configurées correctement. Démarrez ou redémarrez le service PHP-FPM. Vérifiez les paramètres DNS pour les problèmes de résolution.

Comment installer et déployer php7.0 Comment installer et déployer php7.0 Nov 30, 2022 am 09:56 AM

Comment installer et déployer php7.0 : 1. Accédez au site officiel de PHP pour télécharger la version d'installation correspondant au système local ; 2. Extrayez le fichier zip téléchargé dans le répertoire spécifié 3. Ouvrez la fenêtre de ligne de commande et accédez à ; le répertoire "E:\php7" Exécutez simplement la commande "php -v".

See all articles