Même si le site Web est derrière CloudFlare CDN, nous avons décidé d'utiliser OPCache pour réduire la charge sur le serveur car il y a un maximum (pic) de ~ 400 utilisateurs actifs par seconde (la plupart du temps c'est 50-100 u / s ).
Mais la plupart des pages ont des données différentes pour chaque utilisateur, par exemple la vue d'ensemble du tableau de bord de l'utilisateur, la plupart des données sont identiques mais il y a des numéros différents pour chaque utilisateur qui doit être à jour.
P.S. Le site Web fonctionne sous PHP 7.3.4
4 Réponses :
opcache.memory_consumption
TLDR: Le code de production doit toujours avoir OPCached activé.
OPcache met uniquement en cache la représentation d'opcode interne d'un script PHP, pas sa sortie. Les requêtes effectuées ou le contenu affiché par la page n'ont aucun impact sur le comportement d'OPcache.
Cette mise en cache améliorera les performances de toutes les pages Web PHP. En tant que tel, il doit toujours être activé sur les sites de production.
Je pensais que cela mettrait également en cache la sortie, donc je me suis trompé, note prise, merci
Comme vue générale de cette approche La mise en cache php quel que soit le cache APC ou opcache ou bien est une stratégie incroyable cela devrait augmenter les performances de php de 50% en général Comme il agit comme suit Lorsque le script php est exécuté, cela implique trois étapes majeures
1-analyse du script
2-compilation du script
3 sorties
Le cache APC ou bien agit comme intermédiaire car il enregistre le script php sous la forme compilée afin que php démarre directement dans l'étape de sortie et cela n'affectera pas les requêtes mais cela augmentera sa vitesse en tant que requête pour MySQL ou bien pas seulement l'instruction de SELECT ou autre, mais cela implique l'exécution d'extensions comme PDO donc cela deviendra plus rapide
Vous pouvez classer l'extension comme suit
APC ou Xcache pour php 5
Dans la nouvelle version de php, utilisez opcache
Tous ont le même principe Certains développeurs aiment APC d'autres comme opcache À titre d'exemple, X-cart, la plate-forme d'achat populaire utilise xcache.
Chaque script PHP est en cours de compilation lors de l'exécution, Il faut du temps pour transformer le code lisible par l'homme en un code compréhensible par la machine.
OpCache est un moteur de cache bytecode, il ne compilera le script en bytecode qu'une seule fois - vous gagnerez donc du temps - puis le script précompilé est stocké en mémoire, ce qui devrait conduire à des améliorations de performances dans vos applications PHP. p>
Ce que je pense qu'il vous manque, c'est que l'opcache NE cache PAS le résultat du script, mais il s'agit simplement de compiler le script.
Notez que cette méthode n'est pas bonne si le script php change lui-même pour chaque utilisateur ou s'il est chargé à partir de - disons par exemple - une base de données