Maison  >  Article  >  développement back-end  >  guide de réglage des performances php-fpm

guide de réglage des performances php-fpm

WBOY
WBOYoriginal
2023-07-07 11:57:33995parcourir

Guide de réglage des performances PHP-FPM

Vue d'ensemble :
Avec le développement continu des sites Web et des applications, PHP-FPM est devenu un rôle très important dans la capacité à fournir du contenu dynamique. Cependant, à mesure que le nombre de visites augmente, PHP-FPM peut être confronté à des goulots d'étranglement en termes de performances. Dans ce guide, nous présenterons quelques bonnes pratiques et stratégies d'optimisation des performances de PHP-FPM afin de vous aider à réaliser tout son potentiel de performances.

  1. Ajustez le fichier de configuration PHP-FPM
    Par défaut, le fichier de configuration PHP-FPM est généralement /etc/php-fpm.conf ou /etc/php/php-fpm.d/www.conf. Voici quelques paramètres de configuration à noter :
  • pm.max_children : Il s'agit du nombre maximum de processus enfants pouvant être traités simultanément dans le pool de processus PHP-FPM. Vous pouvez déterminer cette valeur en examinant la mémoire totale du serveur, le nombre de cœurs de processeur et la charge réelle. Un réglage trop élevé peut entraîner une charge élevée du serveur, et un réglage trop faible peut entraîner un gaspillage de ressources et la mise en file d'attente des requêtes. Par exemple, une valeur typique pourrait être la mémoire totale divisée par la consommation moyenne de mémoire par processus PHP.
    Exemple :

    pm.max_children = 50
  • pm.start_servers : Ce paramètre définit le nombre de processus enfants créés au démarrage de PHP-FPM. Cette valeur peut être ajustée en fonction des conditions réelles pour garantir qu'il n'y a pas de retard après le démarrage.
    Exemple :

    pm.start_servers = 5
  • pm.min_spare_servers et pm.max_spare_servers : ils définissent respectivement le nombre minimum et maximum de processus enfants disponibles dans le pool de processus PHP-FPM pour gérer les requêtes inactives. Ajustez ces deux valeurs​​en fonction des conditions de charge réelles pour garantir qu'il existe suffisamment de processus pour traiter les demandes tout en évitant le gaspillage de ressources.
    Exemple :

    pm.min_spare_servers = 2
    pm.max_spare_servers = 10
  1. Optimiser le code PHP
    En plus de configurer les paramètres de PHP-FPM, vous pouvez également améliorer les performances en améliorant le code PHP. Voici quelques stratégies d'optimisation courantes :
  • Évitez d'utiliser trop de ressources : réduire l'utilisation de la mémoire, optimiser les requêtes et éviter d'utiliser trop de boucles peuvent tous réduire le temps d'exécution des scripts PHP et ainsi améliorer les performances.
    Exemple :

    // 减少内存使用
    $variable = "This is a long string";
    // 优化查询
    $query = "SELECT * FROM table WHERE column = :value";
    // 避免过度循环
    for ($i = 0; $i < 1000; $i++) {
      //...
    }
  • Utiliser la mise en cache : l'utilisation d'une technologie de mise en cache appropriée, telle que Redis ou Memcached, peut améliorer les performances en réduisant les accès fréquents à la base de données ou à d'autres ressources.
    Exemple :

    // 从缓存中获取数据
    $data = $redis->get('key');
    if (!$data) {
      // 访问数据库并将数据缓存起来
      $data = $db->query('SELECT * FROM table');
      $redis->set('key', $data);
    }
  • Évitez les opérations inutiles sur les fichiers : la lecture et l'écriture de fichiers sont une opération relativement lente. Réduisez le nombre d’accès au disque.
  1. Utiliser OPcache
    OPcache est une extension officiellement fournie par PHP pour accélérer l'exécution des scripts PHP. Il stocke les scripts précompilés en mémoire, évitant ainsi d'analyser et de compiler les fichiers PHP à chaque requête. Voici un exemple de configuration d'OPcache :
[opcache]
opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=4000
opcache.validate_timestamps=0

Voici quelques principes et méthodes de base pour optimiser les performances de PHP-FPM. N'oubliez pas que l'optimisation des performances est un processus continu qui peut être ajusté et amélioré en fonction de scénarios d'application réels. En configurant correctement PHP-FPM et en optimisant le code PHP, vous serez en mesure d'utiliser pleinement le potentiel de performances de PHP-FPM et d'améliorer la vitesse de réponse et les performances des sites Web et des applications.

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:
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