Maison  >  Article  >  développement back-end  >  Découvrez comment PHP7 atteint des performances maximales

Découvrez comment PHP7 atteint des performances maximales

coldplay.xixi
coldplay.xixiavant
2020-06-24 17:41:203384parcourir

Découvrez comment PHP7 atteint des performances maximales

PHP7 a été publié. En tant que plus grande mise à niveau de version et plus grande mise à niveau de performances de PHP en 10 ans, PHP7 a très bien fonctionné dans plusieurs tests. L'amélioration des performances est évidente, cependant, afin de maximiser ses performances, je souhaite quand même vous rappeler quelques petites choses.

1. Opcache

N'oubliez pas d'activer Zend Opcache, car PHP7 est plus rapide même sans Opcache que PHP-5.6 avec Opcache activé, donc cela s'est produit lors de la période de test précédente. Quelqu'un n'a jamais activé Opcache. L'activation d'Opcache est très simple. Ajoutez

  1. zend_extension=opcache.so
    opcache.enable=1
    opcache.enable_cli=1

au fichier de configuration php.ini. Le compilateur

utilise un compilateur plus récent, GCC 4.8 ou supérieur est recommandé, car seul GCC 4.8 ou supérieur PHP activera Global Register pour la prise en charge d'opline et d'execute_data, ce qui entraînera une amélioration des performances de 5 % (Wordpres mesuré à partir de la perspective QPS)

En fait, les versions antérieures à GCC 4.8 le prennent également en charge, mais nous avons constaté qu'il y a des bugs dans sa prise en charge, cette fonctionnalité doit donc être activée dans la version 4.8 ou supérieure.

3. HugePage

Mon article précédent a également présenté : Hugepage pour rendre votre PHP7 plus rapide, activez d'abord HugePages dans le système, puis activez huge_code_pages d'Opcache.

Prenez mon CentOS 6.5 comme exemple, passez :

  1. $sudo sysctl vm.nr_hugepages=512

Allouer 512 énormes pages mémoire réservées :

  1. $ cat /proc/meminfo | grep Huge
    AnonHugePages: 106496 kB
    HugePages_Total: 512
    HugePages_Free: 504
    HugePages_Rsvd: 27
    HugePages_Surp: 0
    Hugepagesize: 2048 kB

Puis ajoutez le php.ini :

  1.  opcache.huge_code_pages=1

De cette façon, PHP utilisera de grandes pages mémoire pour enregistrer ses propres segments de texte et d'énormes allocations de mémoire pour réduire les échecs TLB et améliorer les performances.

4. Cache de fichiers Opcache

Activer le cache de fichiers Opcache (expérimental), en l'activant, nous pouvons. laissez Opcache mettre en cache le cache opcode dans un fichier externe. Pour certains scripts, il y aura une amélioration significative des performances
Ajouter dans php.ini :

  1. opcache.file_cache=/tmp

De cette façon, PHP mettra en cache certains fichiers d'exportation binaires Opcode dans le répertoire /tmp, qui peuvent exister tout au long du cycle de vie de PHP.

5. PGO

Si votre PHP est spécifiquement destiné à un projet, comme juste pour votre WordPress, ou Drupal, ou autre chose, alors vous pouvez essayer d'utiliser PGO pour améliorer PHP spécifiquement pour votre Ce projet améliore les performances

Plus précisément, WordPress 4.1. est utilisé comme scénario d'optimisation. Tout d'abord, lors de la compilation de PHP :

    $ make prof-gen
Ensuite, entraînez PHP avec votre projet, par exemple pour WordPress :

    $ sapi/cgi/php-cgi -T 100 /home/huixinchen/local/www/htdocs/wordpress/index.php >/dev/null
    C'est-à-dire, laissez php-cgi exécuter la page d'accueil de WordPress 100 fois pour générer des informations de profil dans le processus
Enfin :

    $ make prof-clean
    $ make prof-use && make install
  1. À ceci. time Le PHP7 que vous compilez est la version compilée la plus performante adaptée à votre projet.

Tutoriel recommandé : "

Tutoriel vidéo php"

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer