appserver.io: un changement de paradigme dans les serveurs d'application PHP
appserver.io, maintenant un système prêt pour la production à la version 1.0.6 (avec 1.1.0 à l'horizon), représente une progression significative dans la technologie du serveur d'applications PHP. Il répond directement au besoin de longue date de hautes performances dans les applications à grande échelle, une préoccupation fréquemment soulevée par des développeurs PHP expérimentés comme Manuel Lemos et Fabien Potencier. Ceci est réalisé en mettant l'accent sur l'optimisation des ressources du serveur et l'amélioration de la collaboration inter-serveur.
The Paradigm Shift: Multi-Threading and Collaboration
L'innovation clé d'Appserver.io réside dans son utilisation de la technologie de threading, une rareté dans l'écosystème PHP. Cela permet un véritable multitâche, en tirant parti des capacités matérielles modernes pour améliorer la réactivité des applications. Alors que PHP prend en charge intrinsèquement le multitâche, AppServer.io exploite l'extension PTHREADS pour débloquer ce potentiel de développement d'applications fileté.
Cependant, les gains de performance ne dépendent pas uniquement d'AppServer.io lui-même. Cela nécessite un changement dans la perspective des développeurs. Alors que le serveur offre le potentiel pour une augmentation des performances, réalisant que le potentiel dépend des développeurs adoptant de nouvelles approches de l'architecture des applications et de la résolution de problèmes.
Licence et disponibilité
Appserver.io propose une édition communautaire sous la licence open source 3.0, aux côtés des éditions professionnelles et d'entreprise. L'installation est simple sur plusieurs systèmes d'exploitation, le programme d'installation lançant automatiquement le processus Appserver une fois terminé.
Au-delà des bases: une série en trois parties
Cet article est le premier d'une série en trois parties explorant AppServer.io. Cette pièce initiale couvre les concepts de haut niveau et l'installation initiale. La partie 2 se plongera dans les composants intégrés du serveur, tandis que la partie 3 explorera les cas d'utilisation pratiques en utilisant l'exemple inclus.
Comprendre les gains de performances: threads et serveur Web PHP standard
Les configurations traditionnelles du serveur Web PHP (illustré ci-dessous) gèrent le threading au niveau du serveur Web / Process Manager, conduisant à des frais généraux significatifs. Chaque demande déclenche un cycle d'allocation des ressources, d'amorçage d'application, de traitement et de négociation des ressources. Cette création et destruction répétées des ressources pour chaque demande consomme des ressources système précieuses, ce qui a un impact sur les performances.
Approche de AppServer.io
appserver.io offre une approche différente (voir illustrations ci-dessous). Son serveur Web basé sur PHP intégré minimise les frais généraux. En outre, les développeurs prennent le contrôle sur les parties de l'application persistent à travers les demandes, éliminant les bootstrap redondants et l'allocation des ressources pour les demandes ultérieures. Cet état persistant réduit considérablement la consommation de ressources et stimule les performances.
Installation et démarrage
appserver.io prend en charge divers systèmes d'exploitation. Un exemple d'installation de Debian Wheezy suit:
echo "deb http://deb.appserver.io/ wheezy main" > /etc/apt/sources.list.d/appserver.list wget http://deb.appserver.io/appserver.gpg -O - | apt-key add - apt-get update apt-get install appserver-dist
Après l'installation, vérifiez l'état du service:
service appserver status
Activer le démarrage automatique sur le redémarrage (Debian):
update-rc.d appserver defaults
Le fichier de configuration de base (/opt/appserver/etc/appserver/appserver.xml
) permet la personnalisation, y compris le port d'écoute (par défaut 9080). Les modifications nécessitent un redémarrage (service appserver restart
). Accéder à l'exemple d'application à http://<your_vm_ip>:9080/example</your_vm_ip>
.
Ceci conclut la partie 1. Restez à l'écoute pour les parties 2 et 3 pour une plongée plus profonde dans les fonctionnalités et les cas d'utilisation d'AppServer.io.
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!