Aller au contenu principal
Gust Training

Formation Optimisation et Profiling des applications JAVA avec JProfiler

Description de la formation Java optimisation Cette formation Java Profiling et Optimisation avec JProfiler, est destinée à des développeurs

Durée :
3 Jours
Niveau :
Intermédiaire
Modalités :
Présentiel · En ligne · Hybride

Objectifs de la formation

Objectifs Opérationnels:

Savoir monitorer et profiler les applications Java tout en explicitant les techniques permettant de les optimiser

Objectifs pédagogiques:

Concrètement, à l’issue de cette formation Java optimisation vous aurez acquis les compétences nécessaires pour:

  • Maitriser les concepts fondamentaux du langage (gestion de la mémoire, mécanisme d’exécution, chargement de classes…)
  • Connaitre les impacts de l’algorithmie sur les performances
  • Maitriser les techniques classiques d’optimisation
  • Connaitre les particularités des services back-end écrits en Java

À qui s’adresse cette formation ?

Cette formation Java optimisation s’adresse à tout développeur, chef de projet ou architecte impliqués dans la réalisation d’applications Java et plus particulièrement J2EE.

Prérequis

Connaissance de Java

Programme

Introduction

L’optimisation de performance :

  • Méthodologie, recommandations, benchmarking, métriques observés

Concepts fondamentaux de Java :

  • JVM, Zones mémoires et GC, ClassLoader, Multi-threading, JIT, JVMTI, Outils de base

Les causes de mauvaises performances

  • CPU, mémoire, IO

Le ramasse miettes

  • Introduction Pools de la HotSpot Les différents algorithmes Tuning du garbage collector

Atelier

Observation des collectes avec JProfiler, tuning des zones mémoire et de l’algorithme

Boites à outils

Introduction et complémentarité des outils

  • Outils systèmes JMX et les Mxbeans de la JVM Agents JVMTI, exemples

Outils fournis par la distribution

  • Commandes en ligne Java jVisualVM et jmc

JProfiler

  • Distributions, Facilités proposés Temps d’exécution : Enregistrements des appels, CPU profiling, Mémoire : Utilisation, collectes Multi-threading : Serveurs back-ends, JavaEE

Atelier

Monitoring via des consoles JMX, Exemple d’un agent JVMTI
Ateliers avec les commandes en lignes
Utilisation de JProfiler pour différents cas de détection de mauvais fonctionnement

Optimisation de code Java

Généralités

  • Limitation d’instances temporaires, boucles et récursivité, les streams Utilisation des chaînes de caractères, switch Exceptions et stacktrace Gestion des I/O, Bufferisation, le package java.nio, gestion des traces

Les collections et tableaux

  • Choisir les bonnes implémentations en fonction de l’algorithme Collection synchronisées ou non

Coût des allocations/désallocations

  • Réutilisation d’instance Pattern pool , singleton, ThreadLocal Les Weak references

Applications multithreadées

  • Cas d’usage des threads, les problèmes de synchronisation, mécanismes de base Le package java.util.concurrent Utilisation de pool de threads Java8 et l’asynchronisme Reactive programming

Atelier

Optimisation d’application en utilisant les techniques présentées

Services Back-end

Particularités JavaEE et services back-end

  • Différents Pool de l’architecture, les caches, scalabité Outils de simulation de charge Intégration des serveurs JProfiler

Persistance et JPA

  • Pools de connexions Optimisation du schéma Caches

Métier

  • Modèle stateless/stateful Transactions

Http et REST

  • Sérialisation/désérialisation Optimisation des transferts

Ateliers

Diagnostic de problèmes sur une application web complète, sur une API Rest

Description de la formation Java optimisation

Cette formation Java Profiling et Optimisation avec JProfiler, est destinée à des développeurs ayant une bonne connaissance du langage Java. C’est une personnalisation de la formation standard JPOPJ en effectuant la plupart des ateliers avec l’outil Jprofiler et en faisant un focus sur les facilités apportés par l’outil.

Travaux Pratiques

Java 6/7 – Utilisation de Netbeans, Netbeans Profiler ou JProfiler

Thèmes : Java

Formations non classées

Word

Objectifs de la formation Word 2010 Malgré tout votre savoir à propos de Word 2010, ce logiciel ne vous a peut-être pas dévoilé toutes ses

Durée
20 Heures
Niveau
Fondamental
Modalités
Présentiel · En ligne · Hybride

Formations non classées

Vue Js

Objectifs de la formation Vue.js Si vous êtes perdu face aux nombreux frameworks JavaScript modernes, Vue.js est la réponse à la complexité

Durée
1 Mois
Niveau
Fondamental
Modalités
Présentiel · En ligne · Hybride

Formations non classées

Typescript

Description de la formation TypeScript TypeScript est un langage de programmation créé par Microsoft. Conçu à l'origine dans le but

Durée
1 Mois
Niveau
Fondamental
Modalités
Présentiel · En ligne · Hybride

Formations non classées

Symfony

Objectifs de la formation Symfony 4 avancé Cette formation Symfony 4 vous permettra d’aller au-delà d’une utilisation de base du framework. Le

Durée
1 Mois
Niveau
Avancé
Modalités
Présentiel · En ligne · Hybride