Maison >développement back-end >Problème PHP >Quel est le problème avec php502 ?

Quel est le problème avec php502 ?

王林
王林original
2019-10-17 15:38:423179parcourir

Quel est le problème avec php502 ?

La raison du 502 sur le serveur est que le délai de connexion a expiré. Nous avons envoyé une requête au serveur. Parce que le serveur a actuellement trop de connexions, le serveur ne peut pas donner de réponse normale. réponse, ce qui entraîne une telle erreur.

Donc, si la concurrence de votre serveur est très grande, vous pouvez d'abord ajouter plus de machines, puis optimiser comme suit pour obtenir de meilleurs résultats, mais si vous avez une petite concurrence mais obtenez 502, cela peut généralement être ; attribué à un problème de configuration, problème de délai d'attente du script.

1. Le nombre de processus php-fpm n'est pas suffisant

Utilisez netstat -napo | nombre de processus fastcgi. Si le nombre est proche de la limite supérieure configurée dans conf, vous devez augmenter le nombre de processus.

Mais vous ne pouvez pas l'augmenter à l'infini. Vous pouvez ajuster le nombre de sous-processus php-fpm à 100 ou plus selon la mémoire du serveur. Sur un serveur avec 4G de mémoire, 200 suffisent.

2. Augmentez le nombre de fichiers ouverts par le noyau Linux

Vous pouvez utiliser ces commandes (doit être le compte root)

echo 'ulimit -HSn 65536'>> /etc/profile
echo 'ulimit -HSn 65536'>> /etc/rc.local
source /etc/profile

3. Délai d'exécution du script

Si le script attend longtemps sans revenir pour une raison quelconque, ce qui entraîne le non-traitement des nouvelles demandes, vous pouvez ajuster de manière appropriée la configuration suivante.

nginx.conf contient principalement les éléments suivants :

fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;

php-fpm.conf S'il contient les éléments suivants :

request_terminate_timeout =10s

4 Le paramètre de cache est relativement petit.

Modifier ou ajouter une configuration à nginx.conf

proxy_buffer_size 64k;
proxy_buffers  512k;
proxy_busy_buffers_size 128k;

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:
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
Article précédent:php ignore les erreursArticle suivant:php ignore les erreurs