Accéder au contenu principal

Paris JUG - Soirée performance

Résumé de cette soirée animé par Kirk Pepperdine et Dan Hardiker, tenant le site http://www.kodewerk.com/.

La présentation fut similaire à celle ayant eu lieu au Devoxx 2009 (visible ici http://beta.parleys.com/#sl=1&st=5&id=1594) donc vous pouvez voir les transparents.

Ambiance bien sympathique surtout par la dynamique du duo.

Coté technique, dans l'ensemble, la présentation portait plus sur le coté méthodologie et bonnes pratiques de l'amélioration des performances d'une application. Seuls des outils de base mais indispensable ont été utilisés (suivi des processus système, JMeters tiré du profiling netbeans ou encore Thread Dump Analyzer).

Kirk nous a présenté un ensemble d'anti-patterns liés aussi bien à la technique qu'à la méthodologie.

La panique.
Erreurs : ignorer des éléments clés, pointer du doigt ("Ca vient de la base de données ou du reseau !"); la pression des utilisateurs et des manageurs; beaucoup de stress.

Pas de "stress testing".
Erreur : utiliser le navigateur pour faire des tests (non répétable, difficile à réaliser).
Besoin : avoir une specification claire du besoin du client en terme de performance; Aucune réponse de plus de 3 sec.

"Shot in the dark".
Erreur : ne pas travailler sur des intuitions, par exemple, code propre et non propre ont souvent les memes performances. Faire des optimisations de facon prématuré est inutile.
Besoin : mesurer pour connaitre l'origine du probleme. Identifier les principaux consommateurs. Tester chaque niveau de l'application, dans l'ordre Hardware puis JVM/OS puis application puis le client associé à des patterns d'utilisation.
Par exemple si au niveau de l'OS, si les ressources affectés au processus se partagent également entre l'application et sa gestion par le systeme, il y a surement un probleme de threads.

Dans la scéance des questions / réponses, il est ressorti qu'un des principaux objectifs du consultant sur des questions de performance va etre de faire parler les différents acteurs du projet. Les problemes de performances Java se repartissent à 40% sur des problemes de mémoire et à 40% sur des problemes d'accès base de données (JDBC).

Allez le compte rendu + wave par Olivier Croisier : http://thecodersbreakfast.net/index.php?post/2010/01/23/Paris-JUG-Performance-Kirk-Perpperdine

Commentaires

Posts les plus consultés de ce blog

Summary of 'Clean Architecture' by Robert C. Martin

Summary of 'Clean Architecture' by Robert C. Martin
Uncle Bob, the well known author of Clean Code, is coming back to us with a new book called Clean Architecture which wants to take a larger view on how to create software.

Even if Clean Code is one of the major book around OOP and code design (mainly by presenting the SOLID principles), I was not totally impressed by the book.

Clean Architecture leaves me with the same feeling, even if it’s pushing the development world to do better, has some good stories and present robust principles to build software.

The book is build around 34 chapters organised in chapters.
Programming paradigm After some introduction, there is an overview of three paradigm of programming:

structured programming which imposes discipline on direct transfer of controlobject oriented programming which imposes discipline on indirect transfer of controlfunctional programming which imposes discipline upon assignment

Uncle Bob tells us that each of these paradi…

Hébergement d'un blog !

Bon il y a maintenant plusieurs semaines, j'ai lancé un blog sur l'expérience utilisateur (ux-fr.com) : hébergement sur le serveur gandi d'un ami, wordpress 2.8, un thème courant mais correct et les plug ins indispensables.

Bon déjà le site était affreusement lent et enfin tout est tombé depuis une semaine impossible de relancer le wordpress.

80% de chance que ca vienne du site en lui même mais qui à tout refaire (j'ai quand même les articles normalement c'est déjà une chance énorme), j'aimerais faire cette fois un choix efficace, robuste et rapide.

Le prix n'est pas vraiment le problème (enfin jusqu'a 100 euros par an, j'ai pas encore 10 000 visiteurs par jour). Par contre, je veux quelque chose qui ne demande de perdre du temps sur la partie technique.

Niveau site, je pense que le mieux est de rester sur du Wordpress donc je cherche un bon hebergeur pour du php/mysql ce qu'il y a de plus classique.

Je suis ouvert à des propositions innovantes par e…

Le développeur incompétent est un mythe

Sous ce titre complètement arbitraire et très clairement provocateur, je vais passer un contre pied aux derniers articles que j'ai lus sur le métier de développeur.
Par exemple :
http://patricelamarche.net/2011/05/24/lincomptence-des-dveloppeurs/ 
http://blogs.codes-sources.com/tja/archive/2011/10/04/etre-un-bon-d-veloppeur-c-est-aussi-une-question-d-attitude-personnelle.aspx 
Ça tombe bien c'est juste avant la soirée du Paris JUG sur le métier de développeur ! Et comme on se plaint que les présentateurs ne sont pas de vrais (?) développeurs, je vais en profiter pour donner mon avis.

Alors voila, d'après ces articles, un bon développeur connait ses fondamentaux.
Ok soit mais quelle est cette liste de fondamentaux ? 
Chez certains, c'est les maths et l'algorithmie pure, d'autres c'est C++ par coeur et savoir retourner une chaine de caractère en moins de 3 instructions et une seule allocation mémoire, d'autres c'est Java JEE, ses 100 jsr et frameworks in…