Optimisation des performances

Certains frameworks se sont révélés par le passé non performant (exemple : EJB 2 Entity, FOP) etc. Mais aujourd'hui Java est une technologie mature qui, bien utilisée, offre de très bonnes performances. Les frameworks de type Hibernate ne peuvent pas être utilisés pour tout réaliser mais ils nous permettent de développer rapidement 90% des fonctionnalités.

Mauvaise utilisation des frameworks de persistance

Les problèmes de performances sont souvent dûs à la méconnaissance des frameworks ou des technologies utilisées. Il nous arrive souvent d'entendre par exemple qu'Hibernate n'est pas performant. Bien souvent il s'agit simplement d'une mauvaise utilisation de ses mécanismes (Lazy loading, Transactions, Proxy etc).

Utilisation d'outils de profiling

Nous avons tendance trop souvent à essayer d'optimiser des parties du code qui ne sont pas très consommatrices de ressources (mise en place de cache, etc). Or, les problèmes de performances sont souvent dûs à la couche de persistance et non pas à un algorithme si complexe soit-il. Aujourd'hui avec les processeurs modernes, l'optimisation d'un algorithme ne doit être réalisée qu'après avoir identifié celui-ci comme étant problématique. Ceci peut être fait en utilisant un outil de profiling.

Prévention

Les problèmes de performances sont souvent détectés seulement une fois en prodution. Les principales causes en sont l'absence de tests de performance ou même plus souvent à cause de la volumétrie des données de développement qui ne correspondent pas à celle des données de production. La mise en place d'un environnement cohérent permet de détecter les problèmes avant la livraison.

Actions a posteriori

Quand surviennent les mauvaises performances, la solution proposée consiste souvent à redévelopper des parties complètes de l'application alors qu'en général, quelques optimisations suffisent à améliorer de manière significative ces performances. Une fois de plus, la règle des 80/20 s'applique: 80 % des problémes de performances peuvent être solutionnés en 20% du temps de développement.

Notre approche

Safe Pic Technologies réalise des interventions pour l'amélioration directe des performances. Nous définissons des objectifs et nous vous offrons une garantie de résultat.

Rencontrons-nous pour définir vos objectifs en terme d'amélioration et parlons de ces problèmes au passé !