1. INTRODUCTION
Historique des pratiques de production : du mainframe aux applications Web.
Où en est la production aujourd'hui ?
Java, J2EE : l'ère de la maturité.
2. JAVA DANS SON ENVIRONNEMENT ET SES DIVERSES FORMES
La Java Virtual Machine (JVM).
Le Java Runtime Environment (JRE).
Le Java Development Kit (JDK).
Le Java Plugin.
Les principales versions de Java.
Les différents fournisseurs de JVM (Sun, IBM…).
Installation sous Windows et Linux.
Utilisation de composants non-java avec JNI.
Java et les serveurs multi-CPU.
Cohabitation de plusieurs JRE sur un serveur.
Etude de la structure des répertoires du JRE/JDK.
Présentation des utilitaires fournis avec le JRE.
Télédistribution avec Java Web Start et JNLP.
Mécanismes de mise à jour.
3. VUE D'ENSEMBLE SUR LA PLATE-FORME J2EE
La norme J2EE et ses différentes versions.
Présentation des principaux éditeurs : IBM WebSphere, BEA WebLogic, Jboss et Tomcat.
Les servlets, rôle et fonctionnement.
Les pages JSP, principes fondamentaux.
Introduction aux composants EJB : EJB Session (stateful et stateless), EJB Messages, EJB Entités.
Evolution des EJB : comprendre EJB 3.
Mécanisme d'asynchronicité dans J2EE avec JMS.
Le déploiement des applications.
4. COMPRENDRE LES EXECUTABLES ET LE PACKAGING J2EE
Présentation des différents formats d'exécutables : Java
Archives (JAR), Web Archives (WAR), Enterprise Archives (EAR).
Utilisation des Manifests.
Les répertoires WEB-INF et WEB-INF/LIB.
Parcours des fichiers de configuration.
Etude approfondie de l'architecture de Tomcat. L
5. LA GESTION DE LA MEMOIRE
Introduction à la gestion de la mémoire.
Présentation du garbage collector.
La notion de Class Loader.
Les différents types de mémoire.
Installation et utilisation de JVMStat.
6. L'ACCES AUX BASES DE DONNEES
Présentation de JDBC.
Les différents types de drivers.
Le pooling des connexions.
La surveillance du trafic JDBC avec P6Spy.
7. MONITORING DES APPLICATIONS JAVA
Planification et gestion de batch.
La génération de logs (Java, Log4J) :
. fichier de paramétrage
. format des logs
. règles de rolling
Analyse des logs avec Chainsaw.
Le support de SNMP dans Java 5.
Présentation du standard JMX.
Utilisation de Jconsole.
Analyse des trames réseau avec Ethereal.
8. LA GESTION DES PERFORMANCES
Principes des architectures 3-tiers.
Conduite de tests de performance.
Tuning des applications.
9. JAVA ET LA SECURITE
La sandbox et le contrôle d'accès.
La protection du code et les obfuscateurs.
10. J2EE ET HTTP
La séparation contenu statique / dynamique.
Démonstration avec Apache et Tomcat.
Installation et paramétrage de mod_jk.
Analyse des logs http.
11. CLUSTERING, GESTION DES SESSIONS
Principes du « load balancing ».
Principes du « session fail-over ».
Les différents types de clusters :
Clusters J2EE avec IBM, BEA, Jboss,
Clusters JMS avec SonicMQ,
Clusters de JVM avec Terracotta.
Avantages et inconvénients du clustering.