Utilisez la gestion des processus php-fpm pour réaliser l'équilibrage de charge

WBOY
Libérer: 2023-07-09 13:10:01
original
1061 Les gens l'ont consulté

Utilisez la gestion des processus php-fpm pour réaliser l'équilibrage de charge

Avec la complexité croissante des applications Internet et l'augmentation du nombre d'utilisateurs, l'équilibrage de charge est devenu une technologie indispensable. L'objectif de l'équilibrage de charge est de répartir le trafic sur plusieurs serveurs pour améliorer la stabilité et les performances du système. Dans les applications PHP, php-fpm (PHP FastCGI Process Manager) est un outil de gestion de processus courant qui peut être utilisé pour réaliser l'équilibrage de charge et fournit des options de configuration flexibles.

Cet article expliquera comment utiliser l'outil de gestion de processus php-fpm pour réaliser l'équilibrage de charge et fournira quelques exemples de code.

1. Installez php-fpm

Tout d'abord, vous devez vous assurer que php-fpm a été installé sur le serveur. Vous pouvez vérifier si php-fpm a été installé en exécutant la commande suivante :

$ php-fpm -v
Copier après la connexion

Si vous voyez un résultat similaire à celui-ci, php-fpm a été installé avec succès :

PHP 7.4.9 (fpm-fcgi) (built: Jul 16 2020 21:48:32)
Copier après la connexion

Si php-fpm n'est pas installé, vous pouvez l'installer en exécutant la commande suivante :

$ sudo apt-get install php-fpm
Copier après la connexion

2. Configurez php-fpm

Avant d'implémenter l'équilibrage de charge, vous devez configurer php-fpm. Il comprend principalement les aspects suivants :

  1. Configuration de l'hôte virtuel

Dans le répertoire /etc/php/{version}/fpm/pool.d/, créez un nouveau fichier de configuration nommé vhost1.conf pour configurer l'hôte virtuel. L'exemple de configuration est le suivant :

[vhost1]
user = www-data
group = www-data
listen = /var/run/php/vhost1.sock
listen.owner = www-data
listen.group = www-data
Copier après la connexion

Parmi eux, l'utilisateur et le groupe spécifient l'utilisateur et le groupe sur lesquels l'hôte virtuel s'exécute ; Listen spécifie le chemin du socket que php-fpm doit écouter.

  1. Configuration de la gestion des processus

Dans le répertoire /etc/php/{version}/fpm/pool.d/, recherchez le fichier de configuration nommé www.conf pour configurer la gestion des processus. L'exemple de configuration est le suivant :

[www]
pm = dynamic
pm.max_children = 10
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
Copier après la connexion

Parmi eux, l'élément de configuration pm spécifie le mode de gestion des processus comme mode dynamique ; pm.max_children spécifie le nombre maximum de processus enfants ; pm.start_servers spécifie le nombre de processus enfants de démarrage pm ; min_spare_servers et pm.max_spare_servers spécifient le nombre de processus enfants inactifs.

  1. Autres éléments de configuration

En plus des deux configurations principales ci-dessus, vous pouvez également configurer d'autres options en fonction des besoins réels, telles que la limite de mémoire, le délai d'attente, etc.

3. Implémenter l'équilibrage de charge

Une fois la configuration de php-fpm terminée, vous pouvez l'utiliser pour réaliser l'équilibrage de charge. Les étapes spécifiques sont les suivantes :

  1. Dans la configuration de serveurs Web tels que nginx, configurez le proxy inverse sur plusieurs sockets php-fpm. L'exemple est le suivant :
location / {
    proxy_pass unix:/var/run/php/vhost1.sock;
}

location /vhost2/ {
    proxy_pass unix:/var/run/php/vhost2.sock;
}
Copier après la connexion
  1. Démarrez le processus php-fpm
$ sudo systemctl start php7.4-fpm
Copier après la connexion
.
  1. Test de l'effet d'équilibrage de charge

Vous pouvez tester l'effet de l'équilibrage de charge en écrivant un simple script PHP. L'exemple de code est le suivant :

<?php
echo "Hello, World!
";
echo "Server IP: " . $_SERVER['SERVER_ADDR'] . "
";
?>
Copier après la connexion

IV Résumé

Cet article présente la méthode d'utilisation du processus php-fpm. gestion pour réaliser l’équilibrage de charge et fournit des exemples de configuration et des exemples de code. En configurant correctement l'outil de gestion de processus php-fpm et le serveur Web, l'équilibrage de charge peut être obtenu et la stabilité et les performances du système peuvent être améliorées. Dans des applications pratiques, il peut également être combiné avec d'autres technologies, telles que la mise en cache, le partage de bases de données, etc., pour optimiser davantage l'effet d'équilibrage de charge.

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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!