Maison > cadre php > Swoole > Comment redémarrer le processus swoole après sa fermeture

Comment redémarrer le processus swoole après sa fermeture

Libérer: 2019-12-16 09:32:43
original
2944 Les gens l'ont consulté

Comment redémarrer le processus swoole après sa fermeture

Une fois le processus swoole fermé, vous pouvez utiliser la méthode Server->reload pour le redémarrer.

Serveur->introduction à la méthode de rechargement :

Redémarrez tous les processus Worker/Task.

bool Server->reload(bool $only_reload_taskworkrer = false)
Copier après la connexion

$only_reload_taskworkrer S'il faut redémarrer uniquement le processus de tâche

Un serveur back-end occupé traite les requêtes à tout moment. Si l'administrateur termine/redémarre le programme serveur en tuant le processus, il le fait. peut provoquer un crash. Le code est terminé à mi-chemin de l'exécution.

Dans ce cas, une incohérence des données se produira. Par exemple, dans un système commercial, la section suivante de la logique de paiement est l'expédition. On suppose que le processus se termine après la logique de paiement. Cela amènera l’utilisateur à payer la devise mais ne livrera pas les marchandises, et les conséquences seront très graves.

Swoole fournit un mécanisme de terminaison/redémarrage flexible. L'administrateur n'a qu'à envoyer un signal spécifique au serveur, et le processus Worker du serveur peut se terminer en toute sécurité.

1. SIGTERM : envoyez ce signal au processus principal/processus de gestion et le serveur se terminera en toute sécurité

2 Dans le code PHP, vous pouvez appeler $serv->shutdown() pour. terminer cette opération

3. SIGUSR1 : Envoyez le signal SIGUSR1 au processus principal/processus de gestion, ce qui redémarrera en douceur tous les processus Worker

4. Dans le code PHP, vous pouvez appeler $serv->. ;reload() pour terminer cette opération

5. Le rechargement dispose d'un mécanisme de protection lorsqu'un rechargement est en cours, les nouveaux signaux de redémarrage seront ignorés

6. le processus Worker peut ne pas avoir l'autorisation d'envoyer des messages au maître. Le processus envoie des informations. Dans ce cas, vous devez utiliser le compte root et exécuter la commande kill dans le shell pour redémarrer

7. invalide pour les processus utilisateur ajoutés par addProcess

Apprentissage recommandé : tutoriel vidéo swoole

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