Formation aux technologies de l'informatiqueformation java

Administration JBoss 4

AJ110
Prix inter : 1530 € HT Durée: 3 jours
Prix intra*: 3710 € HT
* jusqu'à 8 personnes
Public
Public : développeurs, administrateurs JavaEE
Niveau : confirmé
Prochaines sessions
Nous contacter au 06 68 36 54 43 ou par mail
Description

JBoss est un serveur d'applications incontournable dans le monde Java. Il offre une gamme complète des fonctionnalités J2EE (Servlet / JSP, EJB, JMS, Web Service...) pour le développement et le déploiement d'applications Java en entreprise.

Ce cours vous apprendra à installer et configurer JBoss. Il traite aussi des fonctionnalités avancées de JBoss, en matière de déploiement, sécurité et performance.

Pré-requis
Une connaissance générale de la plate-forme J2EE (Servlet, JSP, EJB,...) est obligatoire pour ce cours.
Programme
  • Introduction à JavaEE (rappels)

    • Les principes fondamentaux de java et de JavaEE
    • Les principaux composants de JavaEE (JSP, servlet, EJB, JMS,...)
    • L'essentiel d'XML
  • Introduction à JBoss

    • JBoss, le serveur d'application certifié JavaEE de RedHat
    • Les principes de l'Open Source et les types de licences associées
    • L'architecture de JBoss (kernel, JMX et AOP)
  • Les bases de l'administration JBoss

    • L'installation de JBoss et les prérequis
    • Le principe des configurations
    • Le déploiement d'applications JavaEE (ear), d'applications Web (war) et de composants EJB (jar)
    • Le chargement de classes et son impact sur le déploiement des librairies
  • La gestion des configurations

    • Les configurations standards (minimal, default, all) et configurations personnalisées
    • L'architecture de déploiement
    • Le déploiement de datasources et de connecteurs JCA (rar)
    • Le déploiement de services (sar) et de MBeans (JMX)
    • L'inspection du serveur avec JMX (console, twiddle et accès RMI)
    • L'intégration avec Tomcat ; le remplacement de Tomcat par Jetty
  • Le suivi du serveur

    • La gestion des traces avec Log4J et Chainsaw
    • L'inspection du serveur avec la console web, ses fonctions d'alertes et ses graphiques
    • L'analyse des queues et sujets JMS avec Hermes
    • Le suivi des requêtes SQL avec le proxy JDBC P6Spy et IronGrid
    • Les outils de monitoring du JDK : jconsole, jps, jstat,...
  • Les fonctions avancées d'administration

    • Les techniques d'invocation d’EJB (http, pooled,...)
    • Affiner la chaîne d'intercepteurs
    • La technique de script BeanShell
    • Les notifications en MBeans
    • La planification de tâches (scheduler et time service)
  • L'optimisation des performances

    • Les réglages de la machine virtuelle (hotspot, Xmx, Xms,...)
    • Affiner le dimensionnement des pools (EJB, DataSource, threads)
    • Les autres optimisations classiques
    • La mise en cluster pour la tolérance de panne (failover) et la répartition de charge (load balancing)
  • La sécurité du serveur et des applications

    • Les principes de sécurisation du serveur (réseau, security manager, applications critiques)
    • Le modèle de sécurité JBoss (JBossSx)
    • La gestion des autorisations et des authentifications en JavaEE (JAAS)
    • La sécurisation des échanges avec SSL
  • Quelques compléments

    • L'élimination des composants inutiles d'une configuration
    • Les notifications en MBeans (suite)
    • Le gestion centralisée de la configuration (netboot)
    • Le binding pour faire cohabiter plusieurs instances de JBoss sur un serveur
Travaux Pratiques
Les exercices consistent en une mise en oeuvre pratique, avec déploiement d’applications, pour chaque partie du cours. Ils sont réalisés avec le JDK 5.0 de Sun et JBoss 4.0 ou 4.2, sous Windows ou Linux.
Intervenants
Alexis Hassler
Alexis est consultant et formateur indépendant en technologies Objet. Il intervient auprès de ses clients pendant les phases de lancement de projet, pour définir la méthode et l'outillage nécessaires à l'équipe, puis en phase d'analyse et de conception, pour la mise en oeuvre d'UML. Il assiste aussi ses clients dans la définition des architectures techniques, en particulier sur les plateformes Java et JavaEE.