Maison > cadre php > Workerman > Est-ce que PHP Workerman est asynchrone ?

Est-ce que PHP Workerman est asynchrone ?

(*-*)浩
Libérer: 2019-12-05 11:57:17
original
2905 Les gens l'ont consulté

Est-ce que PHP Workerman est asynchrone ?

introduction officielle de Workerman : Workerman est un framework de messagerie instantanée de socket PHP asynchrone open source hautes performances. Il prend en charge une concurrence élevée et une stabilité ultra-élevée et est largement utilisé dans le développement d'applications mobiles, de communications mobiles, d'applets WeChat, de serveurs de jeux mobiles, de jeux en ligne, etc. (Apprentissage recommandé : tutoriel Workerman )

Prend en charge les connexions longues TCP, prend en charge Websocket, HTTP et d'autres protocoles, et prend en charge les protocoles personnalisés. Il possède de nombreux composants hautes performances tels que Mysql asynchrone, Redis asynchrone, Http asynchrone, client MQTT IoT, file d'attente de messages asynchrone, etc.

En fait, Workerman est similaire à une version PHP de nginx. Le noyau est également multi-processus + Epoll + IO non bloquant. Chaque processus Workerman peut gérer des dizaines de milliers de connexions simultanées. Parce qu'il réside en mémoire, il ne repose pas sur des conteneurs tels qu'Apache, nginx et php-fpm et offre des performances ultra élevées.

Hautes performances

Basé sur la bibliothèque de réseau d'événements Epoll hautes performances, une seule machine peut prendre en charge des millions de connexions simultanées, et le débit de connexion à long terme est aussi élevé jusqu'à 36 W/S. Les objets tels que les bases de données PHP peuvent résider en mémoire, réduisant ainsi la surcharge d'analyse, de compilation et de réseau.

Étant donné que le fichier PHP est lu et analysé une fois à partir du disque, il résidera dans la mémoire la prochaine fois qu'il sera utilisé, l'opcode en mémoire sera utilisé directement, ce qui réduit considérablement les E/S du disque. et initialisation des requêtes, création de l'environnement d'exécution, etc. en PHP Il existe de nombreux processus fastidieux tels que l'analyse lexicale, l'analyse syntaxique, la compilation de l'opcode, la fermeture des requêtes, etc.

Et il ne repose pas sur des conteneurs tels que nginx et apache. Cela réduit la surcharge réseau de nginx et d'autres conteneurs communiquant avec PHP. Le plus important est que les ressources peuvent être maintenues en permanence, et ce n'est pas nécessaire. pour initialiser les connexions à la base de données à chaque fois, utilisez donc Workererman pour développer des applications. Les performances sont très élevées. La

Haute disponibilité

a été confirmée par de nombreuses entreprises, y compris des sociétés de commerce électronique avec un chiffre d'affaires quotidien de plus de 100 millions, pour le développement de backend de serveurs, et bien connue les sociétés de jeux en ligne l'utilisent pour le développement de backends de jeux.

Facile à développer

L'interface est simple et il existe déjà de nombreuses applications réseau matures Tant que vous connaissez PHP, vous pouvez rapidement développer sur la base de ces applications. . Propre service d'application Socket.

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