PHP fonctionne trop longtemps et ne répond pas aux autres requêtes.

angryTom
Libérer: 2023-02-26 21:40:02
original
2210 Les gens l'ont consulté

PHP fonctionne trop longtemps et ne répond pas aux autres requêtes.

N'exécutez pas de scripts PHP dont l'exécution prend plus de dix minutes en PHP-FPM.

1. Il est recommandé que les scripts PHP exécutés dans PHP-FPM utilisent pclose(popen()) pour ouvrir un processus PHP-CLI sans bloquer l'exécution de votre script.

2. Une fois l'exécution terminée, insérez le message dans la base de données.

3. La réception effectue une notification de message via une interrogation programmée AJAX (similaire à la notification de message de Zhihu).

Si vous devez exécuter un script aussi long en PHP-FPM, ce n'est pas impossible.

Vous devez d'abord configurer Nginx pour transmettre ce script à un pool de processus dynamique PHP-FPM indépendant préconfiguré (différents pools de processus PHP-FPM écoutent différents ports) pour le traitement, afin que l'exécution du script n'affectera pas les autres pools de processus PHP-FPM. De plus, le pool de processus dynamique (pm = dynamique) peut déployer dynamiquement plus de processus pour traiter les scripts, au prix d'une plus grande consommation de mémoire. Dans ce cas, vous feriez mieux de configurer un nombre maximum de processus (pm.max_children = 20). .

Si vous souhaitez que PHP-FPM continue de traiter les affaires après avoir terminé la requête HTTP, vous pouvez utiliser la fonction fastcgi_finish_request() fournie par PHP-FPM.

Recommandé : "Tutoriel 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!

É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