Maison > Opération et maintenance > Nginx > Quelles sont les différences entre nginx et Tomcat ?

Quelles sont les différences entre nginx et Tomcat ?

藏色散人
Libérer: 2019-06-10 15:04:04
original
3712 Les gens l'ont consulté

Quelles sont les différences entre nginx et Tomcat ?

Quelles sont les différences entre nginx et Tomcat ?

La différence entre nginx et tomcat

Les serveurs sur le Web sont tous appelés serveurs Web, mais chacun a une division du travail différente.

nginx est souvent utilisé comme service de contenu statique et serveur proxy (pas votre proxy FQ). Il transmet directement les requêtes externes aux services d'application suivants (Tomcat, Django, etc.). conteneur. , permettant à l'application Web Java de s'y exécuter, correspondant au même niveau que jboss, jetty et d'autres choses.

Mais rien n'est sûr. Nginx peut également fournir des fonctions d'application via le développement de modules, et Tomcat peut également fournir directement des services HTTP. Il est généralement utilisé dans les intranets et les scénarios qui ne nécessitent pas de petits services tels que le contrôle de flux.

Apache est de moins en moins utilisé, et ses fonctions se chevauchent généralement davantage avec nginx.

À proprement parler, Apache/Nginx devrait être appelé "Serveur HTTP" alors que Tomcat est un "Serveur d'applications", ou plus précisément, un "Conteneur d'applications" Servlet/JSP (applications développé dans d'autres langages comme Ruby/Python ne peut pas fonctionner directement sur Tomcat).

Un serveur HTTP s'occupe de la transmission et du contrôle d'accès au niveau du protocole HTTP, donc sur Apache/Nginx, vous pouvez voir des fonctions telles que le proxy et l'équilibrage de charge. Le client accède aux ressources stockées sur le serveur (fichiers HTML, fichiers image, etc.) via le serveur HTTP. Grâce à la technologie CGI, le contenu traité peut également être distribué via un serveur HTTP, mais un serveur HTTP ne transmet toujours fidèlement les fichiers du serveur au client que via le protocole HTTP.

Le serveur d'applications est un conteneur pour l'exécution d'applications. Il doit d'abord prendre en charge le runtime du langage de développement (pour Tomcat, il s'agit de Java) pour garantir que l'application puisse s'exécuter normalement sur le serveur d'applications. Deuxièmement, il doit prendre en charge les spécifications liées aux applications, telles que les bibliothèques de classes et les fonctionnalités de sécurité.

Pour Tomcat, il est nécessaire de fournir les bibliothèques de classes standards, les interfaces, etc. requises pour le fonctionnement de JSP/Sevlet. Pour plus de commodité, les serveurs d'applications intègrent souvent les fonctions du serveur HTTP, mais ils ne sont pas aussi puissants que les serveurs HTTP professionnels. Par conséquent, les serveurs d'applications s'exécutent souvent derrière le serveur HTTP, exécutent des applications et convertissent le contenu dynamique en contenu statique via le serveur HTTP distribué. clients.

Pour plus de connaissances sur Nginx, veuillez visiter la colonne Tutoriel d'utilisation de Nginx !

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