Publié par
Il y a 5 mois · 3 minutes · Back

Retour sur Joker 2016

Jocker conférence xebia javaLes 13 et le 14 octobre s’est tenue la plus grande conférence Java de Russie : Joker.

Pendant 2 jours, des acteurs majeurs du monde Java et de la JVM se sont rassemblés pour partager et apprendre.

Pour cette édition 2016, une salle était exceptionnellement ouverte et accessible gratuitement et proposait des talks parmi les plus qualitatifs de la conférence.

Je n’ai pu regarder que la journée du samedi, mais elle était déjà très chargée !

JVM dans le détail

Les conférences gratuites ont commencé à 11 heures, heure parisienne ; c’est Charles Nutter qui a ouvert le bal avec Down to the rabbit hole: an adventure in JVM Wonderland.

charles-nutter

Charles Nutter a présenté comment les différentes constructions en Java, et notamment en Java 8, sont interprétées par le compilateur et quelles constructions du bytecode en résultent, le tout ponctué d’anecdotes sur le développement de JRuby.

Il a été suivi par Aleksey Shipilëv, l’ancien monsieur performance d’Oracle actuellement à un poste identique chez Red Hat.

Le keynote de ShipilëvClose Encounters of The Java Memory Model Kind, avait pour sujet le fonctionnement de la JVM et certaines particularités du JMM. Le talk a, comme à son habitude, été difficile à digérer, y compris pour les connaisseurs, et consistait en une interprétation moderne d’un de ses anciens articles : Close Encounters of The Java Memory Model Kind! Cette fois, Aleksey s’est concentré sur les pièges liés à la recherche de performance à tout prix et à des mises en garde sur la JMM.

J’ai pu en retirer deux notions principales, sur lesquelles il n’a pas manqué d’insister :

  • toujours respecter aquire / release et il n’y aura presque jamais de problèmes,
  • ne jamais provoquer de race conditions, car il devient quasiment impossible d’avoir un résultat prévisible.

Aleksey Shipilëv : la vallée de la JVM

Aleksey Shipilëv : la vallée de la JVM

Aperçu de la modularité de la Java 9

Le talk suivant était présenté par Sander Mak, futur co-auteur de Java 9 Modularity que vous pouvez découvrir en early release en lien dans son blog.

En un peu près une heure, il a présenté Jigsaw et montré comment le maitriser, à travers un exemple d’un analyseur de complexité d’un texte modulable. Cela en valait le détour et on a hâte de découvrir le sujet plus en détail dans son livre à paraitre.

Couverture de la Early Release.

Couverture de la Early Release.

Retour d’expérience

Par ailleurs, nous avons pu assister à deux talks de retour d’expérience :

Le premier par Ildar Nurislamov, sur les choix et le tuning du garbage collector à getIntent, les différentes optimisations à privilégier pour des environnements à très haute charge, nécessitant des traitements rapides (sous 50 ms) de milliers de requêtes par seconde (le tout en temps réel) !

Le second talk présenté par Andrey Ershov, explique comment un memory grid, ici Apache Ignite peut aider à survivre dans un environnement à haute charge, distribué et parallélisé, en se basant sur l’exemple du logiciel de conférence audio/vidéo créé pour sa compagnie : Dino Systems.

La journée s’est terminée par un talk façonTED, par le CTO et le co-fondateur d’Azul Systems, Gil Tene.

Il a rappelé qu’il est nécessaire de rester terre à terre lorsqu’on parle de la performance ou qu’on essaye de la mesurer. Que la performance en tant que telle est inutile et doit constamment être replacée dans le contexte du but recherché. Cependant, il a également parlé de l’importance de rêver et de créer des programmes qui exploitent au maximum toutes les ressources informatiques à notre disposition, pour en avoir toujours plus et aller toujours plus loin.

L’ensemble des talks peut être retrouvé sur la chaine officielle de l’organisateur 6 mois après la conférence (la connaissance du russe est presque requise).

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *