Maison  >  Article  >  cadre php  >  Le travailleur est-il efficace ?

Le travailleur est-il efficace ?

(*-*)浩
(*-*)浩original
2019-12-12 09:32:372279parcourir

Workerman lui-même est un framework de serveur multi-processus PHP avec des modules de gestion de processus PHP et de communication par socket, il peut donc s'exécuter indépendamment sans dépendre de conteneurs tels que php-fpm, nginx ou apache.

Le travailleur est-il efficace ?

Développement PHP pur

workerman est entièrement développé en PHP Les applications développées avec Workerman ne s'appuient pas sur php-fpm, apache. , les conteneurs nginx peuvent s'exécuter indépendamment. Cela rend très pratique pour les développeurs PHP le développement, le déploiement et le débogage d’applications. (Apprentissage recommandé : tutoriel Workererman )

Support PHP multi-processus

Afin de faire jouer pleinement les performances du multi-processus du serveur CPU, Workererman prend en charge le multi-processus multi-processus par défaut. Workerman démarre un processus principal et plusieurs sous-processus pour fournir des services externes. Le processus principal est chargé de surveiller les signaux de sortie des sous-processus et de générer de nouveaux sous-processus pour gérer les services. mais rend également Workerman plus stable.

Support TCP, UDP

workerman prend en charge TCP et UDP deux protocoles de couche de transport. Il vous suffit de modifier un champ de la configuration pour modifier le protocole de couche de transport et l'activité. Aucune modification n’est requise.

Prend en charge la simultanéité élevée

workerman prend en charge la bibliothèque d'interrogation d'événements Libevent (nécessite l'installation de l'extension Libevent). Les performances de Libevent sont très bonnes lors de l'utilisation de Libevent. Libevent n'est pas installé, utilisez les appels système sélectionnés intégrés à PHP.

Prend en charge divers protocoles de couche d'application

L'interface prend en charge divers protocoles de couche d'application, y compris des protocoles personnalisés. Les protocoles pris en charge par Workerman par défaut incluent HTTP, WebSocket et le protocole Text simple. Dans le même temps, Workerman fournit une interface de protocole commune et les développeurs peuvent facilement développer leurs propres protocoles basés sur cette interface.

Prend en charge les connexions longues

Souvent, les applications PHP doivent maintenir de longues connexions avec les clients, tels que les salons de discussion, les jeux, etc., mais les conteneurs PHP traditionnels (Apache , nginx, php-fpm), c'est difficile à faire.

En utilisant Workererman, vous pouvez facilement utiliser une connexion longue PHP. Un seul processus PHP peut prendre en charge des milliers, voire des dizaines de milliers de connexions simultanées, et plusieurs processus peuvent prendre en charge des centaines de milliers, voire des millions de connexions simultanées.

Surveillance intégrée

workerman dispose d'un module de surveillance et de statistiques à l'intérieur, qui peut compter certaines données de Workerman lui-même, telles que le nombre de sorties de processus et l'état de sortie , et la mémoire occupée par chaque processus La taille et le port IP d'écoute, l'heure de démarrage de chaque processus, le nom du service du processus en cours d'exécution, le nombre de requêtes traitées par chaque processus, le nombre de connexions, le nombre d'échecs de transmission de paquets , etc. Ces informations peuvent être consultées localement en exécutant localement php start.php status.

Prend en charge la détection des battements de cœur

Le modèle de développement Gateway/Worker prend en charge la détection des battements de cœur côté serveur, qui peut régulièrement envoyer des battements de cœur de la couche d'application au client et détecter le client. extrêmes en temps opportun Situations hors ligne (panne de courant, panne soudaine de réseau, etc.).

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