Introduction à Apache Tomcat
Apache Tomcat est un logiciel open source développé par la fondation Apache. Il est écrit en Java et a été publié pour la première fois en 1999. James Duncan Davidson était son fondateur d'origine, qui travaillait à l'époque comme architecte logiciel. Il a commencé à développer un logiciel apache tomcat dans le but de fournir l'implémentation des servlets. Qu'est-ce qu'un servlet? En termes simples, un servlet est une technologie côté serveur qui aide à gérer la demande et la réponse http d'un client (veuillez noter que l'explication détaillée des servlets dépasse le cadre de cet article). La dernière version stable d'une version tomcat 9.0.21 a été publiée le 7 juin 2019.
Apache tomcat peut être défini comme un serveur Web (également appelé conteneur Web / conteneur de servlets), qui traite les servlets, les JSP (en convertissant en interne vos JSP en servlets en interne) et rend également les JSP.
Notez qu'un serveur Web est différent de celui d'un serveur d'applications. Comprenons comment ces deux-là se différencient.
Pourquoi Tomcat est-il dit être un serveur Web mais pas un serveur d'applications?
- Lors de l'empaquetage d'une application, elle peut être empaquetée en tant que .war ou .ear Tomcat est classée comme un serveur Web car elle ne peut gérer que les fichiers .war.
- Un serveur Web est chargé de traiter les servlets et les JSP, tandis qu'un serveur d'applications devrait être capable de traiter les sturts, les EJB (Enterprise Java Beans), JSF (Java Server Faces) ainsi que les servlets et les JSP. Tomcat ne peut traiter que les servlets et les JSP, ce qui en fait un serveur Web.
- Un serveur Web est souvent considéré comme faisant partie d'un serveur d'applications, car un serveur d'applications présente toutes les fonctionnalités qu'un serveur Web possède et, en plus, il contient également des attributs tels que l'équilibrage de charge, la persistance des données, la messagerie pour n'en nommer que quelques-uns. Cependant, l'inverse ne s'applique pas.
- Les serveurs Web peuvent fonctionner uniquement sur le protocole HTTP, tandis que les serveurs d'applications peuvent fonctionner sur divers protocoles CGI et peuvent également inclure le protocole HTTP. Les serveurs d'applications sont principalement utilisés pour gérer les applications de grandes éditions d'entreprise. Étant donné que tomcat fonctionne uniquement sur le protocole HTTP, il relève du serveur Web.
Pourquoi devons-nous utiliser Apache Tomcat?
Les pages Web sont en elles-mêmes des fichiers HTML statiques. Par conséquent, un client ne peut pas interagir avec une page Web statique. Afin de faciliter nos pages Web avec des capacités dynamiques, un serveur Web est requis. Pour pouvoir interfacer son application avec le serveur Web, des API prédéfinies (Application Programming Interfaces) sont fournies. Servlet est l'une de ces API fournie par Java Platform Enterprise Edition conçue pour fonctionner avec les serveurs Web. La surveillance du serveur pour les demandes entrantes des clients n'est pas le travail d'un servlet mais celui d'un serveur Web.
Comment fonctionne Apache Tomcat?
Tomcat est largement utilisé par les développeurs Web lorsqu'ils travaillent sur le développement d'applications Web. D'un point de vue de haut niveau, apache tomcat est responsable de fournir un environnement d'exécution pour les servlets. Il fournit un environnement dans lequel on pourrait exécuter leur code java.
Sur un aspect plus détaillé, tomcat est responsable de:
- Écoutez toutes les demandes entrantes des clients.
- Chargez les classes de servlet respectives à l'aide des mappages de servlets (à partir du fichier web.xml) pour gérer les demandes entrantes des clients.
- Exécutez la classe de servlet et.
- Enfin, déchargez la classe de servlet.
Du point où la classe de servlet est chargée jusqu'au point où elle est déchargée, le servlet est responsable de la gestion de la demande du client en exécutant ses différentes méthodes de cycle de vie et en fournissant la réponse nécessaire à tomcat sous forme de pages JSP. Tomcat renvoie ensuite la réponse au client en rendant le JSP.
Que se passe-t-il dans le cycle de vie d'un servlet?
Un cycle de vie de servlet comprend trois méthodes principales:
1) init () : cette méthode est utilisée pour initialiser le servlet. Un servlet n'est initialisé qu'une seule fois, soit au démarrage du serveur, soit lors de son appel par le client à l'aide de l'URL correspondante.
2) service () : une fois qu'une instance de la servlet est créée, tomcat appelle la méthode de service de la servlet. La méthode de service est chargée de générer la réponse à la demande entrante qui lui est transmise par tomcat. Cette méthode effectue des appels à d'autres ressources côté serveur nécessaires pour récupérer les données de la base de données et fournir une réponse à Tomcat.
3) destroy () : la méthode destroy est invoquée par tomcat à la fin pour toutes les activités liées au nettoyage, telles que la fermeture des connexions à la base de données, la libération de ressources pour la récupération de place, etc.
Avantages d'Apache Tomcat
- Le plus grand avantage d'Apache Tomcat est qu'il est open-source. Il n'est pas nécessaire de débourser de l'argent pour utiliser ce logiciel. On pourrait facilement le télécharger sur Internet et le configurer, et commencer à travailler avec.
- La fondation logicielle Apache fournit des mises à jour régulières pour la rendre compatible avec d'autres versions logicielles et fournit des corrections de bogues, ce qui facilite son utilisation par les développeurs.
- Tomcat prend en charge SSL (Secure Socket Layer) et peut donc être configuré à l'aide d'un certificat SSL pour sécuriser les données sensibles en fournissant une connexion sécurisée.
- Tomcat peut également être configuré pour exécuter plusieurs applications Web sur différents ports. Par exemple, il pourrait exécuter trois applications sur les numéros de port 8080, 8081, 9090. Par défaut, Apache tomcat utilise le numéro de port 8080.
- Il est également compatible multiplateforme, qui peut être utilisé sur les systèmes d'exploitation Windows, Mac OS, Linux.
- On dit qu'il est léger. C'est-à-dire qu'il consomme moins en termes de mémoire et d'utilisation des ressources, permettant ainsi à l'application de fonctionner sans problème sur la plupart des systèmes sans exigences système spécifiques.
Conclusion -
Apache Tomcat est le logiciel le plus largement utilisé par les développeurs d'applications Web aujourd'hui. Des études ont affirmé que plus de 60% des applications Java utilisent Apache Tomcat. Il existe de nombreux documents et didacticiels sur la façon d'utiliser et de configurer apache tomcat, ce qui permet aux nouveaux développeurs d'applications Web de travailler plus facilement et plus facilement avec apache tomcat.
Articles recommandés
Ceci a été un guide sur Qu'est-ce qu'Apache Tomcat. Nous discutons ici comment cela fonctionne, pourquoi devons-nous l'utiliser, le cycle de vie des servlets et leurs avantages. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus -
- Qu'est-ce que le SGBDR?
- Apache HBase
- Analyse de Big Data
- Qu'est-ce qu'ExpressJS?