Qu'est-ce que le tuning d'application ?
JVM, pools d'accès aux BDD, proxy... Autant de paramètres laissés par défaut dont la customisation pourtant permet l'optimisation des performances : voilà en quoi consiste le tuning d'application.
Qu'est-ce que le tuning des applications ?
Les performances des applications web dépendent de nombreux paramètres et de la configuration des applications. Souvent le tuning et la configuration des briques applicatives permet d'obtenir des ROI importants et facilement.
Chaque brique applicative (composant de l'architecture) possède de nombreux paramètres qu'il est souvent difficile d'ajuster correctement. Pourtant, du paramétrage des variables de l'application dépend une grande partie de ses performances et donc du ressenti de l'utilisateur. Il est ainsi primordial de réaliser une phase d'optimisation de la configuration de ces paramètres.
Quand le tuning de l'application ne suffit pas, il peut être nécessaire de réaliser un audit de performance globale. L'idéal est de pouvoir s'inscrire dans une démarche de maitrise des performances.
Sans être exhaustif, on peut significativement améliorer les performances d'une application en configurant finement les différents paramètres disponibles. On peut ainsi réaliser des :
Optimisation de la JVM
Optimisation des pools d'accès aux bases de données
Optimisation des différents caches (applicatif, client,...)
Optimisation des serveurs JEEJava Entreprise Edition
Optimisation des proxy
Optimisation des serveurs
Optimisation des reverses proxy
Optimisation des systèmes d'exploitation
Optimisation du réseau
Optimisation des machines virtuelles et de l'hyperviseur
...
Pyramide du tuning applicatif
La démarche de l'optimisation des performances par le tuning
La démarche pour l'optimisation des performances de votre application dépend de la manière dont vous configurez tous ces paramètres que vous avez à votre disposition. Le ROI d'un bon paramétrage est important car dans la majorité, il ne nécessite pas de devoir réaliser du développement ou de devoir re-tester toute la chaîne applicative.
La démarche pour l'optimisation des performances est donc la suivante :
Phase 1 - Comprendre l'architecture
Dans cette étape, il est nécessaire de comprendre l'intégralité de l'architecture ainsi que de lister tous les paramètres qui peuvent avoir des répercussions positives sur les performances générales de l'application.
- Comprendre l'architecture de l'application
- Définir et recenser l'intégralité des briques applicatives
- Pour chaque brique, lister les paramètres pouvant avoir un impact sur les performances
- Pour chaque paramètre, mesurer les impacts théoriques de mise en oeuvre (Coût, Délai, ROI...)
Les livrables de la phase de recensement des paramètres sont :
- Une liste complète des paramètres et leur utilité
- Une analyse théorique des impacts des paramètres
- Une matrice d'aide aux choix pour choisir les paramètres à utiliser
Phase 2 - Le testing des paramètres
Suite à la phase 1, nous avons sélectionné la liste des paramètres sur lesquels il est possible de jouer. Ainsi dans cette phase, il convient de tester pour chaque paramètre quelle est la valeur optimale qui maximise les performances.
- Création d'un scénario de test
- Configuration des paramètres
- Test du gain de chaque paramètre
Les livrables de la phase de testing des paramètres sont :
- Les gains de performances obtenus avec les paramétrages associés
- Un bilan et des préconisations sur les paramétrages
Exemple de démarche de tuning d'application.
Si vous avez besoin d'expertise plus large, nous pouvons aussi vous accompagner sur de l'expertise technique pointue.
Performances des applications - L'engagement AXOPEN
Afin de mieux vous accompagner dans l'amélioration des performances, les conseils du tuning d'application que nous apportons, nous nous engageons sur les résultats :
- L'amélioration des performances est quantifiée et mesurable
- Nous mesurons pour vous les gains
- Nous prenons en compte vos contraintes pour ancrer nos conseils dans la réalité du terrain
Sommaire
Qu'est-ce que le tuning des applications ?
La démarche de l'optimisation des performances par le tuning
Phase 1 - Comprendre l'architecture
Phase 2 - Le testing des paramètres
Performances des applications - L'engagement AXOPEN