Je voudrais activer le préchargement opcache ( RFC ) sur mes serveurs de production en utilisant PHP 7.4. J'utilise Symfony , mais cela s'applique à tout PHP.
php
preloading
opcache
php-7.4
emix
la source
la source
Réponses:
Tout d'abord, vous devez ajouter:
à ton
php.ini
Ensuite, dans votre script PHP, vous devez passer
opcache_compile_file($file);
chaque fichier que vous souhaitez précharger.la source
Selon le blog, cela semble anodin. Apparemment, Symfony depuis 4.4 génère un script de préchargement qui doit être défini dans
php.ini
:J'ai fait quelques tests dans mon environnement Docker local et voici comment ça s'est passé:
PHP 7.3 sans OPcache (actuel)
PHP 7.4 sans OPcache
PHP 7.4 avec OPcache, sans préchargement (Apache + modphp)
PHP 7.4 avec OPcache, sans préchargement (nginx + php fpm)
Malheureusement, je n'ai pas pu activer le préchargement :( J'ai rencontré les erreurs suivantes (dans Apache + Mod et Nginx + FPM):
Cette fonctionnalité ressemble cependant à un WIP . Je vais revalider cette réponse lorsque je pourrai utiliser cette fonction de préchargement. Dans l'ensemble, je suis assez impressionné, + 30% de performances simplement en passant de PHP
7.3
à7.4
.la source