TRIBUNE
 
09/05/2007

Par Michael Isvy (SQLI) : Tomcat version 6 : elle a tout d'une grande !

D'abord embryon de serveur JEE, la plate-forme Open Source a évolué au fil des années. Elle a été dotée d'une belle console d'administration Web, le panel des fonctionnalités supportées n'a cessé de grandir.
  Envoyer Imprimer  

 
En savoir plus
 
 
 

Il y a bien longtemps, Tomcat était un embryon de serveur JEE, dédié aux environnements de développement Web et aux plates-formes de production peu exigeantes. Petit à petit le projet Tomcat s'est enrichi : les performances se sont améliorées de manière radicale, Tomcat s'est doté d'une belle console d'administration Web, le panel des fonctionnalités supportées n'a cessé de grandir...

Tomcat est aujourd'hui une véritable solution d'entreprise, idéale pour beaucoup de projets Java. Comme le montre le schéma ci-dessous, Tomcat peut être intégré sous deux formes :

Tomcat peut donc être utilisé comme conteneur Web au sein d'un serveur JEE complet ou comme serveur Java indépendant. Si Tomcat est utilisé de manière indépendante, il fournit une implémentation partielle de la norme JEE (absence des EJBs, de la gestion des transactions façon JTA…).

Les serveurs d'applications Open Source JBoss, Jonas et Geronimo proposent l'intégration avec Tomcat comme conteneur Web. Les serveurs IBM Websphere et BEA Weblogic ont leur propre conteneur Web, et n'intègrent donc pas Tomcat.

Nouveautés Tomcat 6

En version 5, Tomcat avait déjà fait ses preuves sur des environnements très exigeants. La version 6 suit la lignée des précédentes évolutions, en développant certaines fonctionnalités comme la gestion centralisée des "fermes" de serveurs Tomcat. Cependant, Tomcat reste un conteneur Web enrichi. Le but du projet Tomcat n'est pas de devenir un serveur JEE "complet".

La version 6 apporte plusieurs évolutions majeures

- Support du déploiement groupé (farm deployment). Pour comprendre le mécanisme de farm deployment, il suffit de considérer une application à très forte volumétrie, servie par une dizaine d'instances Tomcat. Avec Tomcat 5, à chaque mise à jour de cette application, il fallait installer l'application sur chacun des 10 serveurs. Avec Tomcat 6, l'installation de ladite application sur 10 serveurs ne nécessite qu'une seule opération. Il en est de même pour les opérations de mise à jour et de désinstallation des applications.

- Implémentation de la nouvelle version des spécifications servlet et JSP (servlet 2.5 et JSP 2.1)

- D'autres améliorations plus spécifiques ont été apportées, notamment sur la gestion de la mémoire et des entrées / sorties.

Tomcat 6 versus serveur d'application Open Source "complet"

Il a été vu dans le schéma ci-dessus que Tomcat peut être utilisé comme serveur Java indépendant, ou comme conteneur Web au sein d'un serveur d'applications JEE. Quelle solution faut-il choisir ? La solution la plus riche n'est pas toujours la meilleure. En effet, il est beaucoup plus complexe d'administrer un serveur d'applications JEE que d'administrer une instance Tomcat. Il suffit de lancer le serveur pour s'en rendre compte : par défaut, Tomcat n'occupe que 2 ports sur votre machine (8080 et 8009), alors qu'un serveur d'applications complet en occupe une dizaine !

Tomcat est généralement apprécié pour sa simplicité d'utilisation et d'administration. En revanche, si votre application nécessite certaines fonctionnalités JEE qui ne sont pas couvertes par Tomcat (EJB, JMS, JTA…), il sera nécessaire d'intégrer Tomcat dans un serveur JEE complet.

Conclusion

De plus en plus de serveurs d'applications du marché tendent à embarquer Tomcat comme moteur de servlets. IBM n'a toujours pas levé le voile sur sa stratégie Websphere 7 : il est avancé que cette version de Websphere intègrerait Tomcat (en réalité, c'est l'ensemble du serveur d'applications Open Source Tomcat/Geronimo qui serait intégré dans Websphere). En ce cas, Tomcat deviendrait un composant de référence quasi-incontournable à la manière du serveur HTTP Apache".

 
En savoir plus
 
 
 

Récemment, le projet Tomcat s'est doté d'une console de monitoring des plus séduisantes. lambdaprobe est un projet open-source proposant une console pour Tomcat, basée sur les toutes dernières technologies (AJAX, Spring-MVC). Il permet de visualiser le taux d'occupation des sessions, des connexions en base de données etc). Cette console n'a pas encore été migrée vers Tomcat 6. Néanmoins, l'apparition de projets satellites de qualité est un témoin de plus de la bonne santé du projet Tomcat.

Par Michael Isvy, SQLI


JDN Développeur Envoyer Imprimer Haut de page

Sondage

Adobe parviendra-t-il à percer avec sa nouvelle suite de création Web Edge ?

Tous les sondages