Comment se souvient-on du dernier JokerConf

La semaine dernière à Saint-Pétersbourg a accueilli le Joker de la conférence internationale de Java. Nous avons demandé à nos gars qui lui ont rendu visite de nous parler un peu de l'organisation et des performances les plus intéressantes, selon eux. Quelqu'un a noté le plus de battage médiatique et amusant, quelqu'un - le plus pertinent et utile. Cependant, lisez-le de première main.



Cette année, il y a eu nettement plus de visiteurs et de stands de sponsors, ce qui a entraîné de légers «embouteillages» dans les couloirs, la zone d'exposition et les dîners.

Les reportages, comme d'habitude, ont eu lieu en 4 streams plus 2 mini-streams sur les stands de démonstration dans la zone d'exposition. Au moins 1 rapport intéressant a toujours été dans ce schéma. Entre les discours, vous pouvez parler avec le conférencier dans la zone de discussion ou écouter des mini-présentations sur les stands de démonstration.

Et maintenant sur les rapports eux-mêmes et pourquoi aller aux conférences.



Andrey Gromov rjhdby ,
Développeur back-end FunCorp

Pour moi, un voyage à la conférence est l'occasion de sortir du contexte quotidien. Pour regarder des choses familières d'un autre point de vue, et pour des inconnus - il suffit de regarder. Et le truc le plus important apporté de la conférence est les pages écrites dans un cahier. Pas avec un résumé des rapports, bien sûr, mais avec des réflexions qui ont surgi au cours de leur écoute.

De ce point de vue, Jocker 2019 est passé pour moi sous le signe de JNI et l'intérieur d'une machine virtuelle.

Trois rapports ont suscité le plus grand intérêt, à part Baruch, qui pourrait également nous parler des rapports comptables de la tente avec shawarma afin que vous ne vous arrachiez pas.

  • Cliff Cliff. La mer des nœuds et le HotSpot JIT

Un merveilleux rapport sur la cuisine interne HotSpot C2 JIT d'une personne qui comprend vraiment mieux que presque tout le monde.

Il est peu probable que ces connaissances affectent mon travail, mais une demi-page dans un cahier a été remplie de notes marquées "lire" et "l'approche peut être appliquée en XXX", ce qui est cool.

  • Ionut Balosin. Une course de deux compilateurs: GraalVM JIT contre HotSpot JIT C2

Jonuts a parlé de certaines différences clés dans la mise en œuvre de ces deux compilateurs et de leur impact sur les performances dans certains types de tâches. À première vue, il semble que le rapport soit simple: eh bien, je l'ai pris et essayé, mais ce n'est qu'à première vue, jusqu'à ce que vous vous plongiez dans les détails de ce qui a été dit et montré. Et puis vient la compréhension de la quantité de travail effectuée par le locuteur afin de nous montrer ces «graphiques simples».

  • Dmitry Pisklov. Microservices responsables de quelques microsecondes - amis et ennemis

Du sang, des tripes - tout ce que j'aime. Cette personne vous apprendra à faire le mal, mais les microservices ultra-rapides de manière incorrecte. Je soupçonne qu'après ce rapport, j'ai dû remplacer de nombreuses chaises par des tissus d'ameublement brûlés.
Ici et sur dangereux, et sur mmap, et sur le réglage des paramètres du noyau, et sur votre pile réseau, et sur tout le reste sous la devise "performances à l'avant-garde"!

Evgeny Zakharov nerumb ,
Développeur back-end FunCorp

  • Sergey Kuksenko. Java a-t-il besoin de types "en ligne"? Regard étroit de l'ingénieur de la performance sur le projet Valhalla

Un rapport intéressant d'un ingénieur d'Oracle, qui a partagé les détails internes des travaux sur Valhalla. Je me demandais pourquoi Valhalla n'était pas venu à Java depuis si longtemps, et ce rapport a répondu à bon nombre d'entre eux.

Les types de valeur ne sont pas si faciles à implémenter en Java, et vous devez enregistrer littéralement sur des unités d '"octets". Sergey a parlé de quelques astuces qu'ils devaient suivre pour ne pas changer la structure du stockage d'objets en Java et y mettre toutes les informations nécessaires. Et ce qui était particulièrement surprenant, c'est que Valhalla rend non seulement Java plus rapide, mais il y a aussi des conséquences négatives. Il est nécessaire de compliquer le code existant avec les types Value, et dans certaines situations, une légère dégradation des performances est obtenue (bien que, selon Sergey, cela ne dépasse pas actuellement 10% dans les scénarios les plus négatifs). Mais un travail actif est toujours en cours et nous espérons que l'équipe Oracle sera en mesure d'optimiser les scénarios négatifs et enfin de traduire Valhalla en Java.

En bonus, Sergey a demandé à tous ceux qui veulent essayer Valhalla (il sera bientôt disponible dans l'assembly OpenJDK lorsque le drapeau sera activé) et vérifier son travail sur ses scripts. Il est fortement conseillé d'informer l'équipe de développement de la forte dégradation de la productivité, le cas échéant.

  • Tagir Valeev. Java 9-14: petites optimisations

Comme toujours, un rapport intéressant de Tagir, qui n'a pas besoin d'être présenté. Il y avait beaucoup de choses intéressantes sur les améliorations internes qui deviennent disponibles avec la mise à niveau vers la nouvelle version de Java. Tagir a donné de nombreux exemples, parmi lesquels le plus mémorable était les abs , qui, semble-t-il, n'avaient nulle part où optimiser davantage. l'implémentation de la méthode elle-même consistait en une seule ligne de code. Mais cette méthode a également été rendue plus rapide en en faisant une méthode intrinsic . Il y avait de nombreux autres exemples où un simple passage à la prochaine version de Java augmente la vitesse, parfois même de plusieurs ordres de grandeur, comme avec le même hypot . Je vous conseille de bien voir l'enregistrement du rapport pour ceux qui ne l'ont pas encore vu.

Oleg Zolotarev OlegXxl ,
Développeur back-end FunCorp

  • Juergen Hoeller & Josh Long. Un printemps réactif revisité

Josh a "annulé" tout le discours, tandis que le rapport lui-même parle très bien de Reactive dans littéralement toutes ses manifestations dans la dernière version de Spring. Ils ont également parlé de l'intégration avec RSocket (saviez-vous que pour la première fois le démarreur à ressort dans la version stable utilise une dépendance instable?). Bien sûr, ces informations peuvent également être obtenues à partir de manuels officiels, mais ici, elles étaient de première main et sous forme agrégée.



  • Baruch Sadogursky. DevOps pour les développeurs (ou contre eux?!)

Baruch a arraché les couvertures lors du discours de clôture du premier jour, et il a plutôt bien réussi! À partir de ce rapport, vous apprendrez comment et de quoi est issue l'idéologie DevOps, qui est le seul à implémenter son «interface». Il était intéressant d'entendre parler de ce qui est vraiment le «meilleur code» (son DoD), et de ce que le savoir-faire logiciel et DevOps ont en commun.

Malheureusement, le discours de clôture du deuxième jour n'était pas aussi "inflammable" que l'année dernière, lorsque le Dr Kurpatov a pris la parole, et la discussion de cette performance dans les bavardoirs a pris un autre mois.

Cependant, nous n'allons pas à la conférence pour cela, mais à tous les autres égards, ce fut un succès.

Un grand merci à tous les organisateurs et conférenciers! Rendez-vous aux prochaines conférences!

Source: https://habr.com/ru/post/fr473854/


All Articles