Dernière version : 3.0.4-1

|
Aperçu rapide |
|
|
Catalogue |
System (Système) |
|
Catégorie |
Serveurs d'applications |
|
Volumes d'utilisateur |
Oui |
|
Min. mémoire |
160 Mo |
|
SE |
Linux |
|
Contraintes |
non |
|
Questions/commentaires |
|
TOMCAT est une appliance de serveur Web basée sur l'ordinateur Sun Java et Apache Tomcat, un servlet Java et un conteneur de pages JavaServer développé sous licence Apache. La documentation principale pour Tomcat est disponible à l'adresse tomcat.apache.org. Tomcat fournit une prise en charge compatibles avec les servlets et JSP. Tomcat peut fonctionner en tant que serveur Web autonome ou serveur d'applications.
TOMCAT traite un contenu Web statique, déploie automatiquement des applications Web, exécute des servlets ainsi que des pages JavaServer à partir d'un volume de contenu configurable par l'utilisateur. Les chemins d'accès aux documents sont configurables de façon à pouvoir partager le même volume entre plusieurs serveurs Web et d'autres appliances avec un autre contenu.
TOMCAT utilise les protocoles HTTP/1.1 et HTTP/1.0 pour les clients Web et AJP 1.3 pour les requêtes des serveurs frontaux (ex. Apache avec mod_proxy_ajp).
A l'instar des serveurs de WEBx, TOMCAT compte trois terminaux de sortie génériques prévus pour accéder à des services externes à partir de scripts sur le volume de contenu. Le terminal db permet d'accéder à diverses bases de données ; le terminal fs permet d'accéder au stockage de fichiers partagés (à l'aide de NFS) et le terminal aux est créé pour l'envoi de courriels à un serveur SMTP.
Le terminal de journal devrait être utilisé pour connecter TOMCAT à un système de fichiers partagé dans lequel TOMCAT peut stocker des fichiers journaux.
La configuration du serveur est définie à l'aide de diverses propriétés. Ces propriétés sont conçues pour répondre à la plupart des utilisations avec une configuration facile. Dans la plupart des cas, seules quelques-unes doivent être définies sur d'autres valeurs que celles par défaut.
|
Nom |
Dernière version |
SE |
Version de l'ordinateur Java |
Version d'Apache Tomcat |
|
TOMCAT |
3.0.3-1 |
CentOS 6.3 |
JDK 1.6.0.22 |
6.0.29 |
|
TOMCAT64 |
3.0.3-1 |
CentOS 6.3 (64 bits) |
JDK 1.6.0.22 |
6.0.29 |
Ressources pour TOMCAT
|
Ressource |
Minimum |
Maximum |
Valeur par défaut |
|
UC |
0.1 |
16 |
0.3 |
|
Mémoire |
160 Mo |
4 Go |
512 Mo |
|
Bande passante |
1 Mbit/s |
2 Gbits/s |
250 Mbits/s |
Ressources pour TOMCAT64
|
Ressource |
Minimum |
Maximum |
Valeur par défaut |
|
UC |
0.1 |
16 |
0.3 |
|
Mémoire |
192 Mo |
64 Go |
512 Mo |
|
Bande passante |
1 Mbit/s |
2 Gbits/s |
250 Mbits/s |
Remarque :
Important : TOMCAT a des restrictions héritées de la machine Java 32 bits. Cette machine Java ne peut pas utiliser plus de 2,6 Go de mémoire environ et il est inutile d'allouer plus de 2,8 Go de mémoire à TOMCAT.
Outre la mémoire requise pour les applications Java, vous devez également disposer d'une certaine quantité de mémoire pour stocker les sessions d'application. Chaque session vide (sans données supplémentaires stockées) utilise près de 2 Ko de mémoire. Celle-ci est utilisée pendant la durée vie de la session (par défaut, 30 min.); Vous pouvez configurer la durée de vie de session en modifiant ou en ajoutant une section supplémentaire dans le fichier de configuration web.xml d'une application. Par exemple, pour définir la durée de vie de session sur 1 minute, insérez le code ci-dessous :
<Session-config>
<Session-timeout>1</session-timeout>
</Session-config>
Si 10 000 visiteurs uniques sont attendus en 30 minutes, 20 Mo supplémentaires de mémoire disponible sont requis. En général : Quantité de mémoire nécessaire = nombre maximum de sessions actives simultanées multiplié par la taille moyenne d'une session.
Important : Si la quantité de mémoire disponible n'est pas suffisante, TOMCAT risque de ne pas fonctionner correctement. Cela dépend des applications utilisateur qui s'exécutent dans Tomcat et ne constitue pas une limite de l'appliance proprement dite.
|
Volume |
Description |
|
content |
Volume de stockage des applications Tomcat, des données d'applications, ainsi que des fichiers temporaires et de travail. Ce volume est uniquement utilisé si la propriété content_on_fs est définie sur off. |
|
Nom de propriété |
Type |
Description |
|
content_on_fs |
Chaîne |
Spécifie si le contenu concerne le système de fichiers au niveau du terminal fs ou s'il se trouve sur le volume de contenu. Valeur par défaut : off (sur le volume de contenu) |
|
hostname |
Chaîne |
Nom d'hôte du site Web. Valeur par défaut : localhost |
|
tomcat_port |
Nombre entier |
Port sur lequel Tomcat guette les requêtes HTTP entrantes. Valeur par défaut : 8080 |
|
session_timeout |
Nombre entier |
Délai d'expiration (en minutes) de la session utilisateur, au cours duquel TOMCAT conserve en mémoire toutes les données associées à la session utilisateur. Valeur par défaut : 30. |
|
max_connections |
Nombre entier |
Nombre maximal de connexions simultanées autorisées. Lorsque ce nombre est atteint, les nouvelles connexions sont toujours acceptées, mais leur traitement est différé jusqu'à la fermeture d'une autre connexion. Valeur par défaut : 100 |
|
heap_size |
Nombre entier |
Mémoire allouée pour le segment de mémoire Java (option -Xmx Java), en mégaoctets. Si elle correspond à 0, cette valeur est automatiquement calculée. Valeur par défaut : 0 |
|
perm_size |
Nombre entier |
Mémoire allouée pour les objets permanents Java (option -XX:PermSize Java), en mégaoctets. Si elle correspond à 0, cette valeur est automatiquement calculée. Valeur par défaut : 0 |
|
app_base |
Chaîne |
Répertoire racine pour les documents, ainsi que les fichiers temporaires et de travail. Une structure typique du répertoire ${catalina.base} de Tomcat est créée dans ce dossier : partagé pour les bibliothèques qui sont communes à toutes les applications Java ; temporaires et de travail pour les fichiers temporaires et de travail ; et le sous-répertoire défini dans la propriété work_dir - analogue de ${catalina.base}/webapps. Valeur par défaut : vide |
|
work_dir |
Chaîne |
Répertoire dans lequel se trouvent les documents à traiter. Il est également utilisé à des fins de déploiement automatique. Pour plus d'informations à ce sujet, reportez-vous à la section Automatic Application Deployment sur le site Web de Tomcat. Valeur par défaut : webapps |
|
timezone |
Chaîne |
Spécifie le fuseau horaire utilisé dans l'appliance. Si cette propriété est vide, le fuseau horaire reste inchangé. Une liste des fuseaux horaires pris en charge est disponible ici. Valeur par défaut : vide |
|
Nom |
Direction |
Protocole |
Description |
|
in |
in |
HTTP |
Traite les requêtes HTTP provenant des clients Web. Prend en charge les protocoles HTTP/1.1, le HTTP/1.0 et AJP. |
|
db |
sortie |
Indifférent |
Accède à un serveur de base de données. L'utilisation est définie par les scripts, quels qu'ils soient, qui résident sur le volume de contenu (le cas échéant). Si ce terminal n'est pas utilisé, il peut rester déconnecté. |
|
fs |
sortie |
NFS |
Accède à un système de fichiers réseau pour le stockage de fichiers partagés et fournit un accès en lecture/écriture aux fichiers via NFS. L'utilisation est définie par les scripts, quels qu'ils soient, qui résident sur le volume de contenu (le cas échéant). Le logiciel sur le volume de contenu voit s'afficher le système de fichiers distant monté en tant que /mnt/fs dans l'espace de système de fichiers de l'appliance. Si ce terminal n'est pas utilisé, il peut rester déconnecté. Le serveur connecté doit avoir un partage lecture/écriture nommé /mnt/data exporté via NFS. |
|
log |
sortie |
CIFS |
Accède à un système de fichiers réseau basé sur CIFS pour le stockage des journaux relatifs aux accès et aux erreurs. Si ce terminal n'est pas utilisé, il peut rester déconnecté. Le serveur connecté doit autoriser les connexions anonymes et avoir un partage exporté lecture/écriture nommé share. |
|
aux |
sortie |
Indifférent |
Accède à un serveur SMTP pour l'envoi de messages électroniques sortants. |
|
net |
sortie |
Indifférent |
Sortie de passerelle pour l'accès au sous-réseau. |
|
MON |
sortie |
CCE |
Envoie des statistiques de performances et d'utilisation des ressources à l'appliance MON. |
L'interface par défaut est activée. Elle est destinée au diagnostic et au dépannage (via SSH). Les versions futures de cette appliance peuvent désactiver l'accès SSH.
|
Nom de propriété |
Type |
Description |
|
logs_enabled |
Chaîne |
Active ou désactive complètement la journalisation. Valeur par défaut : no |
|
logs_base_dir |
Chaîne |
Répertoire de stockage des fichiers journaux. Valeur par défaut : vide (les journaux sont placés à la racine du volume NAS monté). |
|
error_log_filename |
Chaîne |
Préfixe de nom de fichier pour le journal d'erreurs. Valeur par défaut : catalina |
|
log_level |
Chaîne |
Niveau de journalisation. Dans l'ordre croissant du niveau de verbosité, les valeurs sont les suivantes : SEVERE, WARNING, INFO, CONFIG, FINE, FINER, FINEST et ALL. Une description plus détaillée des niveaux de journalisation est disponible dans la documentation de Tomcat. Valeur par défaut : INFO |
|
enable_access_log |
Chaîne |
Active ou désactive le journal d'accès. Valeur par défaut : no |
|
access_log_filename |
Chaîne |
Préfixe de nom de fichier pour le journal d'accès. Valeur par défaut : access.log |
L'appliance TOMCAT signale les compteurs personnalisés suivants via le terminal mon. Ces compteurs appartiennent au groupe de compteurs TOMCAT (TOMCAT64 en cas de TOMCAT64) :
|
Nom du compteur |
Description |
|
Classes loaded |
Nombre de classes chargées |
|
Classes loaded bytes |
Nombre de kilo-octets chargés |
|
Classes unloaded |
Nombre de classes déchargées |
|
Classes unloaded bytes |
Nombre de kilo-octets déchargés |
|
Classes load/unload execution time |
Temps passé à exécuter les opérations de chargement et de déchargement de classe |
|
Compiler compiled |
Nombre de tâches de compilation exécutées |
|
Compiler failed |
Nombre de tâches de compilation qui ont échoué |
|
Compiler invalid |
Nombre de tâches de compilation qui ont été annulées |
|
Compiler execution time |
Temps passé à exécuter les tâches de compilation |
|
Heap s0 space capacity |
Capacité actuelle de l'espace de survivants 0 |
|
Heap s1 space capacity |
Capacité actuelle de l'espace de survivants 1 |
|
Heap s0 space utilization |
Utilisation de l'espace de survivants 0 |
|
Heap s1 space utilization |
Utilisation de l'espace de survivants 1 |
|
Heap eden space capacity |
Capacité actuelle de l'espace eden |
|
Heap eden space utilization |
Utilisation de l'espace eden |
|
Heap old space capacity |
Capacité actuelle de l'ancien espace |
|
Heap old space utilization |
Utilisation de l'ancien espace |
|
Heap permanent space capacity |
Capacité actuelle de l'espace permanent |
|
Heap permanent space utilization |
Utilisation de l'espace permanent |
|
Heap young generation GC events |
Nombre d'événements GC (Garbage Collection - collecte des déchets) de jeune génération |
|
Heap young generation GC time |
Temps de collecte des déchets de jeune génération dans la mémoire de tas |
|
Heap number of GC events |
Nombre d'événements GC complets |
|
Heap full GC time |
Temps complet de collecte des déchets |
|
Heap total GC time |
Temps total de collecte des déchets |
|
Pool current new generation |
Capacité de nouvelle génération actuelle |
|
Pool min new generation |
Capacité de nouvelle génération minimale |
|
Pool max new generation |
Capacité de nouvelle génération maximale |
|
Pool current old generation |
Capacité d'ancienne génération actuelle |
|
Pool min old generation |
Capacité d'ancienne génération minimale |
|
Pool max old generation |
Capacité d'ancienne génération maximale |
|
Pool current permanent generation |
Capacité de génération permanente actuelle |
|
Pool min permanent generation |
Capacité de génération permanente minimale |
|
Pool max permanent generation |
Capacité de génération permanente maximale |
|
New generation tenuring threshold |
Seuil d'ancienneté |
|
New generation max tenuring threshold |
Seuil d'ancienneté maximum |
|
Taille désirée du survivant |
Taille désirée du survivant |
|
Compiler tasks |
Nombre de tâches de compilation exécutées |
En cas d'échec de démarrage de l'appliance, les erreurs suivantes peuvent être consignées dans le journal système :
|
Message d'erreur |
Description |
|
ERROR: Logs are enabled, but log terminal is not connected. |
Le terminal de journal n'est pas connecté, mais logs_enabled ou enable_access_log est défini sur yes. |
|
ERROR: Property content_on_fs is 'off' but the local content volume is missing. |
content_on_fs est défini sur off, indiquant que le volume de données doit être monté localement, mais TOMCAT ne parvient pas à monter le volume de contenu. Dans ce cas, il est fort probable que le volume de contenu n'est pas formaté ou n'est pas défini dans les propriétés de TOMCAT. |
|
ERROR: Failed to mount nfs share. |
TOMCAT ne peut pas monter le partage NFS. Il est probable que le système de fichiers n'est pas connecté ou que TOMCAT a été démarré avant NAS (ou qu'une appliance est connectée au terminal fs). |
|
Message |
Description |
|
L'espace disponible sur le disque de stockage des données est inférieur à 5 %. |
L'espace disponible sur le volume de données dont l'accès s'effectue via le terminal fs est inférieur à 5 %. Il est conseillé d'augmenter la taille du volume. |
|
L'espace disponible sur le disque de stockage des données est inférieur à 1 %. |
L'espace disponible sur le volume de données dont l'accès s'effectue via le terminal fs est inférieur à 1 %. Faites attention car vous risquez de perdre des données. |
|
L'espace disque disponible sur le volume de contenu est inférieur à 5 % . |
L'espace disque disponible sur le volume de contenu de l'appliance est inférieur à 5 %. Il est conseillé d'augmenter la taille du volume. |
|
L'espace disque disponible sur le volume de contenu est inférieur à 1 % . |
L'espace disque disponible sur le volume de contenu de l'appliance est inférieur à 1 %. Faites attention car vous risquez de perdre des données. |
Les performances de TOMCAT peuvent être affectées lorsque la journalisation est activée (qu'il s'agisse de la consignation des erreurs activée par logs_enabled = yes ou par celles des accès enable_access_log = yes. Le tableau ci-dessous contient des résultats d'évaluation de performances (exprimés en rps, requêtes par seconde) obtenus lorsque les journaux sont désactivés avec l'utilitaire Apache Benchmark fourni avec Apache Web Server version 2.0 et 2.2. Pour plus d'informations sur Apache Benchmark, reportez-vous au site Web d'Apache. Les paramètres suivants ont été utilisés pour l'évaluation des performances : "bw=500M mem=2G cpu=2".
|
simultanéité |
rps |
|
simultanéité sur 1 client |
2800-3200 rps |
|
simultanéité sur 10 clients |
7500-7900 rps |
|
simultanéité sur 100 clients |
7700-8100 rps |
Site Web simple activé pour Java
TOMCAT traite les applications du volume de contenu.
Appliances en cours d'utilisation :
|
Nom de propriété |
Value (Valeur) |
Commentaires |
|
hostname |
www.mysite.org |
Nom d'hôte du site. |
|
app_base |
MyApp |
|
|
content_on_fs |
off |
TOMCAT utilise le contenu du volume d'utilisateur pour l'ensemble du contenu. |
|
timezone |
EST |
Fuseau horaire EST. |
|
tomcat_port |
80 |
Port standard pour le protocole HTTP. |
Les requêtes client arrivent sur la passerelle IN. La passerelle envoie les requêtes au serveur TOMCAT, qui les traite.
Application à deux niveaux avec base de données, journal et surveillance
Appliances en cours d'utilisation :
Exemple de configuration de propriété :
|
Nom de propriété |
Valeur |
Notes |
|
hostname |
www.mysite.org |
Nom d'hôte du site. |
|
app_base |
MyApp |
|
|
content_on_fs |
on |
TOMCAT utilise le stockage distant via le terminal fs pour l'ensemble du contenu. |
|
timezone |
EST |
Fuseau horaire EST. |
|
tomcat_port |
80 |
Port standard pour le protocole HTTP |
|
max_connections |
200 |
Max de 200 utilisateurs simultanés |
|
logs_enabled |
Oui |
Active les journaux d'erreurs |
|
logs_base_dir |
MyApp_Log_Dir |
|
|
log_level |
INFO |
|
|
error_log_filename |
error_log |
Nom du journal d'erreurs |
|
enable_access_log |
Oui |
Active le journal d'accès |
|
access_log_filename |
myapp_access |
Nom du journal d'accès |
La requête client arrive sur la passerelle IN. La passerelle envoie les requêtes au serveur TOMCAT, qui les traite. Le contenu et les journaux se trouvent sur l'appliance de stockage. Les compteurs sont signalés à l'appliance MON.
Remarque : Les applications Java peuvent utiliser de nombreux types de bases de données. Cela dépend uniquement de la présence du pilote JDBC approprié dans l'application. TOMCAT permet de connecter toute appliance de base de données à son terminal db.
WEB6 en tant que serveur frontal pour TOMCAT
Le diagramme suivant montre l'utilisation de l'appliance TOMCAT en tant que serveur d'applications et de WEB6 en tant que serveur frontal. WEB6 sert le contenu statique et redirige toutes les requêtes qui nécessitent un traitement côté serveur vers TOMCAT à l'aide du protocole AJP.

Remarque : Pour ce mode, il est nécessaire d'activer la prise en charge AJP (activez mod_proxy et mod_proxy_ajp) dans WEB6.
Appliances en cours d'utilisation :
Exemple de configuration de propriété :
|
Nom de propriété |
Valeur |
Notes |
|
content_on_fs |
off |
TOMCAT utilise le contenu du volume d'utilisateur pour l'ensemble du contenu |
|
timezone |
EST |
Fuseau horaire EST. |
Les autres paramètres sont définis sur leurs valeurs par défaut.
WEB6 doit être configuré correctement pour fonctionner en tant que serveur frontal et communiquer avec TOMCAT à l'aide du protocole AJP.
mod_proxy et mod_proxy_ajp doivent être activés en insérant les lignes suivantes dans le fichier de configuration Apache :
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
Il convient de spécifier un chemin de l'espace d'URL à traiter par TOMCAT, par exemple :
ProxyPass /chemin_traité_par_tomcat ajp://aux:8009/some-servlet ProxyPassReverse /chemin_traité_par_tomcat ajp://aux:8009/some-servlet
Par exemple :
|
path |
content |
Traité par |
|
/index.html |
document HTML statique |
traité par WEB6 |
|
/images/* |
fichiers graphiques statiques |
traité par WEB6 |
|
/scripts/*.php |
contenu dynamique généré par des scripts PHP |
traité par WEB6 |
|
/chemin_traité_par_tomcat |
contenu dynamique généré par jsp |
traité par TOMCAT |
La requête client arrive sur la passerelle IN. La passerelle envoie les requêtes au serveur Web frontal, qui traite les requêtes pour des pages HTML statiques, des fichiers graphiques et des scripts PHP. Les requêtes pour des pages JSP ou servlet sont envoyées à AppServer et traitées par ce dernier.
Site Web évolutif activé pour Java
Appliances en cours d'utilisation :
Exemple de configuration de propriétés pour AppServer1 et AppServer2 :
|
Nom de propriété |
Value (Valeur) |
Commentaires |
|
content_on_fs |
off |
TOMCAT utilise le contenu du volume d'utilisateur pour l'ensemble du contenu |
|
timezone |
EST |
Fuseau horaire EST. |
Les autres paramètres sont définis sur leurs valeurs par défaut.
La requête client arrive sur la passerelle IN. La passerelle envoie les requêtes à l'équilibreur de charge lb, qui les transmet à un des serveurs AppServer1 et AppServer2.
TOMCAT et TOMCAT64 utilisent les packages tiers libres suivants, outre les packages tiers libres utilisés respectivement par leur classe de base LUX6 et LUX64.
TOMCAT
|
Logiciel |
Version |
Modifié |
Licence |
Notes |
|
Apache Tomcat |
6.0.29 |
Oui |
Licence Apache 2.0 |
page d'accueil |
|
JDK |
1.6.0.22 |
Non |
Sun-BCL |
Disponible sur le site Web de Sun |
|
samba-client |
3.5.10-125.el6 |
Non |
GPLv2 |
N/D |
|
samba-common |
3.5.10-125.el6 |
Non |
GPLv2 |
N/D |
TOMCAT64
|
Logiciel |
Version |
Modifié |
Licence |
Notes |
|
Apache Tomcat |
6.0.29 |
Oui |
Licence Apache 2.0 |
page d'accueil |
|
JDK |
1.6.0.22 |
Non |
Sun-BCL |
Disponible sur le site Web de Sun |
|
samba-client |
3.5.10-125.el6 |
Non |
GPLv2 |
N/D |
|
samba-common |
3.5.10-125.el6 |
Non |
GPLv2 |
N/D |
|
Copyright © 2013 CA.
Tous droits réservés.
|
|