|
Introduction et installation
Le projet Tomcat : historique et différentes versions
Rappel sur les applications Webs en Java : Contenu statique,
dynamique, Servlets et JSPs, positionnement de Tomcat dans
la norme J2EE, le modèle MVC
Installation : Choix de la JVM et installation, Téléchargement
distribution binaire et installation, Scripts de démarrage
et d'arrêt, Parcours de la distribution et des applications
fournies.
Travaux pratiques :
Installation et mise en place des scripts de démarrage/arrêt
Configuration
Le fichier server.xml : Structure hiérarchique, présentation
des différents éléments (Server, Service,
Connector, ...)
Tomcat et JNDI : Déclaration de ressources JNDI, exemple
d'une DataSource JDBC
Tomcat et l'authentification : Notion de realms, les différentes
formes d'authentification, déclaration et différents
types de realms supportées, contraintes d'accès
dans les applications web
Tomcat et la session utilisateur : Rappel du mécanisme
de session, sérialisation des sessions utilisateur,
les différents manager disponibles
Tomcat comme serveur HTTP : Mise en place de SSI, CGI. Mise
en place des logs d'accès
Interface d'administration : Parcours de l'application d'administration
Travaux pratiques :
Découvrir les contraintes d'accès à
l'application Tomat Manager, Mise en place d'un JDBCRealm,
Démonstration sur la sérialisation de session.
Déploiement d'applications
Les fichiers .war : Structure, construction, le descripteur
de déploiement web.xml, le mapping de servlet.
Le déployeur de tomcat : Retour sur les descripteurs
de contexte, les paramètres de configuration influant
sur le déploiement, déploiement au démarrage
et déploiement à chaud, Tomcat et JMX
Tomcat manager : Déploiement local ou distant avec
le manager, déchargement ou rechargement de context
Automatisation des déploiements : Présentation
de l'outil Ant, Exécution de commande du manager via
Ant
Travaux pratiques :
Déploiements de l'application servlet-examples avec
les différentes techniques
La sécurité
Introduction : Les différentes sources de danger, les
techniques basiques de protection
Applications : Restreindre les accès aux ressources
des applications web, le fichier catalina.policy
Attaques externes : Les différents types d'attaque,
le filtrage de requête et les valves
Sécurisation par SSL : Présentation de SSL,
mise en place dans Tomcat
Travaux pratiques :
Création d'un certificat, Mise en place de SSL
Optimisation et mesures
des performances
Introduction : Méthodologie pour la mesure des performances,
panorama des outils OpenSource
L'outil Jmeter : Présentation des concepts, installation,
enregistrement de scénarios de test, présentation
des différentes mesures et visualiseurs
Optimisation : Types d'optimisation, paramètres de
configuration influant sur les performances.
Travaux pratiques :
Enregistrement d'un scénario de test avec Jmeter, Stress
d'une application test, modification des paramètres
de config.
Intégration avec le serveur Apache
Introduction : présentation des différentes
techniques, avantages et inconvénients.
Apache comme Proxy : Configuration des deux serveurs
Utilisation de mod_jk : Configuration des deux serveurs
Le mode in-process : Obtention du binaire mod_jk, compilation
à partir des fichiers sources, configuration des deux
serveurs
Travaux pratiques : Mise en place des différentes
architectures
Architecture avancée
Introduction : Le clustering, différents types et objectifs,
équilibrage de charge, scalability, tolérance
aux fautes et continuité de service, le déploiement
dans un cluster, le farming
Mode instances multiple : les variables d'environnement CATALINA_HOME,
et CATALINA_BASE, architecture
Equilibrage de charge et tolérance aux fautes : Problématique,
les différentes solutions, utilisation de proxy et
de rewriting, Apache comme répartiteur de charge, l'application
balancer.
Support pour le clustering : Réplication et persistance
de session, problématique limitations et différentes
techniques, le farming dans tomcat
Travaux pratiques :
Mise en place des différentes techniques (instances
multiples, répartition de charges avec Apache, persistance
des sessions)
Page
précédente
|