Le framework de coroutine Hyperf est un framework de coroutine PHP hautes performances et très flexible basé sur Swoole4.5+. Il dispose d'un serveur de coroutine intégré et d'un grand nombre de composants couramment utilisés. Ses performances sont qualitativement améliorées par rapport au framework traditionnel basé sur. PHP-FPM offre des performances ultra élevées tout en conservant des performances élevées, il maintient également une évolutivité extrêmement flexible. Les composants standard sont implémentés sur la base des normes PSR et sont basés sur une conception d'injection de dépendances puissante, garantissant que la plupart des composants ou classes sont remplaçables et. réutilisable.
En plus de la version coroutine commune du client MySQL et du client Redis, la bibliothèque de composants du framework prépare également pour vous la version coroutine d'EloquentORM, du serveur et du client WebSocket, du serveur et du client JSONRPC, du serveur et du client GRPC, du client Zipkin/Jaeger (OpenTracing). , Client GuzzleHTTP, Client Elasticsearch, Client Consul, Client ETCD, Composant AMQP, Composant NSQ, Composant Nats, Centre de configuration Apollo, Gestion de la configuration des applications Alibaba Cloud ACM, Centre de configuration ETCD, basé sur le limiteur actuel de l'algorithme du bucket à jetons, le pool de connexions universel, Le disjoncteur, la génération de documents Swagger, SwooleTracker, le moteur de visualisation, le générateur d'identification global Snowflake et d'autres composants vous évitent d'avoir à implémenter vous-même la version de coroutine correspondante.
Hyperf fournit également des conteneurs d'injection de dépendances basés sur PSR-11, des annotations, une programmation orientée aspect AOP, un middleware basé sur PSR-15, des processus personnalisés, des gestionnaires d'événements basés sur PSR-14 et des files d'attente de messages Redis/RabbitMQ/NSQ/Nats. Mise en cache automatique des modèles, mise en cache basée sur PSR-16, tâches planifiées de deuxième niveau Crontab, internationalisation de la traduction, vérificateur de validation et autres fonctions très pratiques pour répondre à une variété de scénarios techniques et de scénarios commerciaux, et peuvent être utilisées immédiatement.
Intention initiale du cadre :
Bien que le framework développé sur la base du langage PHP soit aujourd'hui dans une ère de discorde entre une centaine d'écoles de pensée, nous n'avons toujours pas vu de framework parfait qui puisse coexister avec un design élégant et des performances ultra élevées, ni de framework qui ouvre véritablement la voie aux microservices PHP. Nous continuerons à investir et à travailler dur pour l'intention initiale d'Hyperf et des membres de son équipe, et vous êtes invités à nous rejoindre et à participer à la construction open source.
Concept de conception :
Hyperspeed+Flexibility=Hyperf, d'après le nom, nous considérons l'ultra-haute vitesse et la flexibilité comme les gènes d'Hyperf.
Pour l'ultra-haute vitesse, nous nous basons sur la coroutine Swoole et effectuons de nombreuses optimisations sur la conception du framework pour garantir une sortie ultra-haute performance.
Pour plus de flexibilité, nous nous basons sur les puissants composants d'injection de dépendances d'Hyperf. Les composants sont tous implémentés sur la base du contrat standard PSR et du contrat défini par Hyperf, de sorte que la plupart des composants ou classes du framework sont remplaçables.
Sur la base des caractéristiques ci-dessus, Hyperf disposera de riches possibilités, telles que la mise en œuvre de services Web, de services de passerelle, de middleware distribué, d'architecture de microservices, de serveurs de jeux, de l'Internet des objets (IOT), etc.
Environnement d'exploitation :
Linux, OSX ou Cygwin, WSL
PHP7.2+
Swoole4.4+