Comment créer un travailleur en swoole
Jan 13, 2020 pm 01:30 PMswoole est un cadre de modèle multi-processus. Lorsqu'une application de processus swoole est démarrée, un total de 2+n+m processus seront créés, n est le nombre de processus de travail, et m est le processus TaskWorker Number, un processus maître et un processus gestionnaire, la relation est comme indiqué dans la figure ci-dessous
Le processus maître est le processus principal, qui sera créer un processus Manager, un thread Reactor et d'autres processus/thread de travail.
Le processus Worker sert de processus de travail de Swoole, et tous les codes de logique métier s'exécutent sur ce processus. Lorsque le thread Reactor reçoit les données du client, il regroupe les données et les envoie à un processus Worker via un pipeline.
Les processus travailleur/tâche dans swoole sont tous bifurqués et gérés par le processus Manager.
Lorsque le processus enfant se termine, le processus gestionnaire est chargé de recycler le processus enfant pour éviter de devenir un processus zombie. Et créez un nouveau sous-processus
Lorsque le serveur est arrêté, le processus gestionnaire enverra des signaux à tous les sous-processus pour notifier aux sous-processus d'arrêter le service
Lorsque le le serveur est rechargé, le processus gestionnaire arrêtera/redémarrera les sous-processus un par un
fork() :
Un processus, comprenant le code, les données et les ressources allouées au processus. La fonction fork() crée un processus presque identique au processus d'origine via un appel système. Autrement dit, les deux processus peuvent faire exactement la même chose, mais si les paramètres initiaux ou les variables transmises sont différents, les deux processus. peut aussi faire différentes choses.
Après qu'un processus appelle la fonction fork(), le système alloue d'abord des ressources au nouveau processus, comme de l'espace pour stocker les données et le code. Copiez ensuite toutes les valeurs du processus d'origine dans le nouveau processus, à l'exception de quelques valeurs différentes des valeurs du processus d'origine. Cela équivaut à se cloner.
Apprentissage recommandé : tutoriel 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!

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Lequel est le meilleur, Swoole ou Workerman ?

Comment utiliser Swoole pour implémenter un serveur proxy inverse HTTP hautes performances

Comment utiliser la coroutine Swoole dans Laravel

Comment swoole_process permet-il aux utilisateurs de changer ?

Lequel a les meilleures performances, swoole ou java ?

Comment redémarrer le service dans le framework swoole

Swoole Advanced : Comment optimiser l'utilisation du processeur du serveur

Swoole en action : Comment utiliser les coroutines pour le traitement de tâches simultanées
