mercredi 16 septembre 2009

Terracotta pour Hibernate

Avec la nouvelle version de Terracotta, il existe un plugin gérant le cache des transactions faites via Hibernate.
Très simple à mettre en place, seule une annotation semble suffir.
Je vous laisse découvrir le détail ici.

vendredi 4 septembre 2009

Test de charge

On en apprend tout les jours, et heureusement!
Je viens de découvrir le framework "The Grinder", permettant de faire des charges.

Certains se diront, mais il vient de se réveiller ou quoi ?
Pas forcément, c'est juste un outil que je n'avais jusqu'à présent pas eu besoin d'utiliser, je connaissais tout de même JMeter (de nom... hum hum touss touss).
Bref, le framework The Grinder semble avoir bonne réputation, on pourra lire sur sourceforce "mieux que JMeter, moins cher que LoadRunner".
Visiblement, les autres avis sont plus nuancés, même si The Grinder semble être un produit formidable, il aura des déficiences dans certains cas que n'auront pas ces concurrents. Mais l'inverse est également vrai.

Il ne reste plus qu'à étudier les propositions selon vos besoins, toujours est-il que le retour d'expérience sur ce framework semble bon.
Les liens :
- le télécharger sur sourceforge
- la page projet
- une comparaison avec LoadRunner et JMeter
- une comparaison avec JMeter seulement, mais beaucoup plus récente

Tout savoir sur la gestion de la mémoire en Java

Le garbage collector comment ca marche ?
Ca veut dire quoi si je rajout -Xms au lancement de ma JVM ?
C'est quoi le heap ?
Si vous vous posez ces questions, et bien les réponses sont .
Même si vous ne vous les posez pas, cet article est très intérressant, bien évidemment le titre est un peu pompeux, et vous n'apprendrez pas tout sur la gestion de la mémoire en Java.
Mais il y a certainement quelques informations que vous aviez oublié, ou des petits trucs qui seront nouveaux.

Création de composants évolutifs

A la création de gros systèmes, ou futur gros systèmes, on se dit que la structure originelle ne devrait pas bouger, que l'architecture est suffisamment bien définie pour pallier aux futures évolutions.
Il y a tout de même des règles et des outils qui permettent de vérifier que le développement de l'application va bien dans le même sens.
Vous trouverez un article qui détaille tout ca sur infoq.

mercredi 2 septembre 2009

La revue de code est une étape importante!

Vos développeurs confirmés ont produit une superbe doc de conception, tout y est claire précis, et les développeurs plus jeunes sont passé à l'étape de codage.
Malgré la meilleure volonté du monde, tout le monde fait des erreurs. De ma courte expérience, j'estime pouvoir dire que personne n'est à l'abri de la duplication de code, de boucle dont les conditions pourraient être optimisées, ou tout simplement de méthodes, fonctions, procédures selon vos termes, pas toujours codées dans les règles de l'art.

Le résultat ne va pas forcément se voir tout de suite, mais avec les mois les années, à force d'ajouter des verrues parce qu'on est pressé ou pour toutes les excuses du monde, il faut suivre la qualité du code produit.

Aujourd'hui grâce à des méthodes comme l'intégration continue, il est tout à fait possible d'obtenir un état des lieux à un instant donné.

Malgré les outils, il ne faut toutefois pas, négliger la revue de code "manuelle". Je vous laisse découvrir quelques informations de plus ici.

Comprendre le contenu d'un WSDL

Pour les néophytes en webservices, le wsdl généré peut être difficile à comprendre.
Avec des schémas à main levée et de bonnes explications, cet article vous permettra de comprendre ce fichier qui peut vite devenir inbuvable.

Solution aux attaques de sessions

L'article pointé ici présente certaines facons d'usuper une session.
Les exemples de solution sont basés sur PHP mais le reste est suffisamment théorique pour que les développeurs web utilisant d'autres langages puissent s'en inspirer.

Le billet pointe aussi vers des explications sur les attaques par injection SQL et les failles XSS.