Il existe généralement deux serveurs Web couramment utilisés pour PHP : 1. apache 2. nginx ;
Apache est le logiciel de serveur Web numéro un au monde. Il peut fonctionner sur presque toutes les plates-formes informatiques largement utilisées et est l'un des logiciels côté serveur Web les plus populaires en raison de ses fonctionnalités multiplateformes et de sécurité.
Nginx (engine x) est un serveur Web HTTP et proxy inverse hautes performances, et fournit également des services IMAP/POP3/SMTP.
Jetons un coup d'œil aux différences entre Apache et Nginx :
1 La principale différence entre les deux est qu'Apache est un modèle multi-processus synchrone, un. connexion Correspond à un processus ; nginx est asynchrone et plusieurs connexions peuvent correspondre à un processus. nginx gère bien les fichiers statiques et consomme moins de mémoire. Mais il ne fait aucun doute qu'Apache reste le courant dominant actuel et possède de nombreuses fonctionnalités riches, il doit donc encore être égalé. Bien sûr, s’il est déterminé que nginx répond aux besoins, alors utiliser nginx sera un moyen plus économique.
2. La capacité de chargement de nginx est bien supérieure à celle d'Apache. Le dernier serveur utilise également nginx. Et après avoir modifié la configuration de nginx, vous ne pouvez pas tester s'il y a un problème avec la configuration.
3. Lorsque Apache est redémarré, il s'avère que la configuration est incorrecte et il plantera. Je serai très prudent lorsque j'apporterai des modifications. Maintenant, je vois qu'il existe de nombreux sites de cluster nginx. l'anti-concurrence et le cluster Apache back-end fonctionnent bien ensemble.
4. Il est inutile que nginx gère les requêtes dynamiques. Généralement, Apache est requis pour gérer les requêtes dynamiques, et nginx ne convient qu'aux requêtes statiques et inversées.
5. Par expérience, nginx est un très bon serveur frontal avec de très bonnes performances de chargement. Avec nginx, il est facile d'utiliser webbench pour simuler 10 000 requêtes de fichiers statiques. Apache a un bon support pour les langages tels que PHP. De plus, Apache dispose d'un réseau de support solide. Il a été développé plus longtemps que nginx et présente moins de bugs. Cependant, Apache a l'inconvénient de ne pas prendre en charge les charges de traitement multicœurs. . Il est recommandé d'utiliser nginx pour le front-end et le back-end. Pour les grands sites Web, il est recommandé d'utiliser la fonction cluster de nginx.
6. Dans la plupart des cas, nginx est meilleur qu'APACHE, comme le traitement des fichiers statiques, la prise en charge de PHP-CGI, la fonction de proxy inverse, le cache frontal, la maintenance de la connexion, etc. En mode Apache+PHP (prefork), si le traitement PHP est lent ou si la pression frontale est élevée, il est facile que le nombre de processus Apache augmente, entraînant un déni de service.
7. Apache présente des avantages en termes de dynamique de traitement. Nginx a une meilleure concurrence et une faible utilisation de la mémoire CPU. Si la réécriture est fréquente, alors Apache est le meilleur !
8. De manière générale, pour les services Web qui nécessitent des performances, utilisez nginx. Si vous n'avez pas besoin de performances et souhaitez simplement de la stabilité, utilisez Apache.
Pour plus de connaissances sur PHP, veuillez visiter le Site Web PHP chinois !
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!