LCC 221 - Massacre à la tronçonneuse

1:40:36
 
Partager
 

Manage episode 248028021 series 25488
Par Emmanuel Bernard, Guillaume Laforge, Vincent Massol, and Antonio Goncalves, découvert par Player FM et notre communauté - Le copyright est détenu par l'éditeur, non par Player F, et l'audio est diffusé directement depuis ses serveurs. Appuyiez sur le bouton S'Abonner pour suivre les mises à jour sur Player FM, ou collez l'URL du flux dans d'autre applications de podcasts.

Guillaume, Arnaud et Emmanuel descendent dans les profondeurs des garbage collectors, Java 14, GraalVM 19.3 (Java is back!) et bien sûr pleins d’autres choses !

Enregistré le 5 décembre 2019

Téléchargement de l’épisode LesCastCodeurs-Episode–221.mp3

News Langages

GraalVM 19.3 with JDK 11 Support. GraalVM se met aussi à WebAssembly

Microsoft ready to contribute to OpenJDK

Trois JEPs prévus pour être intégrés à Java 14 :

Stephen Colebourne râle sur le nouveau switch

Tricher le GC de Go avec du poids mort

  • le GC se declence tous les 2x de heap
  • si pas d’alloc, ca veut dire qu’il vide jusqu’à 1x amis declenche des GC super fréquement
  • donc en allouant (virtuellement) in tableau de 10Go, on reduit de temps entre GC
  • le cout d’un concurrent mark sweep c’est de marquer les objets vivants (les morts ont peut de cout)
  • et les co-routines pendant une phase de mark-sweep doivent faire un travaille de mark ce qui les ralenties
  • donc moins de GC veut dire plus rapide
  • c’est le cout a payer pour un GC avec 1 ou peu de parametres.

Shenandoah: eliminer les mote de pointeurs en avant

  • Shenandoah bouge les objets sans mettre a jour ses pointeurs
    • juste garde une copie dans l’objet meme de ses references
    • puis mets a jour les references de maniere concurrente en parallele de l’appli
    • et enfin peut virer les objets.
  • par default Shenandoah demande un word supplémentaire par objet
    • si le word == l’objet, on est normal, sinon il pointe vers la nouvelle copie de l’objet
    • 5 à 10% de mémoire suppl´mentaire en pratique
  • peut reutiliser le mark word mais comparaison chere surtout a faire a chaque read-barrier
    • uniquement pendnt un GC et sur les objkets dans des colelctions set => peu frequents
    • dans les tests le code de décoding supplémentaire est pas visible dans les benchmarks
  • mais ils ont eliminé les read barrier en load-reference-barrier qui sont moins frequentes en nombre d’objet
  • meilleure densité mémoire, moins de pression sur le CPU cache, plus de throughput
Librairies

Micronaut en Trial dans le tech radar de ThoughtWorks et Quarkus en assess

Middleware

Le Camel a trois bosses

  • un ensemble de projets (Camel, Camel K, Camel extensions pour Quarkus)
  • nouveau site web
  • Java 11 support et abandon de Java 8 durant 2020
  • Camel core modularisé et moins de classes à démarrer, reduire la reflection
  • support de GraalVM via Quarkus
  • DSL typesafe de definition de endpoint
  • Coeur reactif
  • Integration avec microprofile
  • nouveaux composants ( - graphql - 4 more AWS components - Debezium components)
Infrastructure

Sonatype racheté Annonce par Sonatype du rachat

  • par une boite de private equity…
  • il est temps de backuper central

Docker à la découpe. Docker Enterprise racheté par Mirantis Les fondateurs de Google tournent la page

Cloud

AppEngine Java 11 Runtime FAQ. Pas bien les Fat JAR dans les images de conteneur Helm 3 est sorti

Web

.org est vendu, sauvons les .org ( Ils ont réussit à fâcher Kohsuke ).

Data

R2DBC 0.8 Exposer les entités persistées dans vos API ou pas

  • Plus simple, une seul objet
  • plus compliquer des details d’implementations (nouveau champ d’un cote ou de l’autre)
  • accumulation d’annotations pour abstraire ses mod¡eles (JSON, JPA)
  • associations géré en proxy dans JPA et en id ou null dans API
  • V2 de l’API
  • aggregation des données dans l’API
Outillage

La matrice arrive dans Jenkins Pipelines. Jenkins Health Advisor par CloudBees. L’experience zsh de Julien Ponge

Cédric explose le mythe du scripting vs déclaratif dans Gradle Comment éviter l’enfer des dépendances avec Gradle 6

Méthodologies

L’humain est résiliant aux chocs de la vie mais pas tant que cela `au chomage de longue durée

  • etude
  • Plus on est dans un pays développé, plus on est heureux
  • on est plus heureux maintenant qu’il y a quelques années (croissance)
  • plus on est riche, plus on est heureux
Loi, société et organisation

Save your code on Software Heritage Archive.

Conférences Nous contacter

Soutenez Les Cast Codeurs sur Patreon https://www.patreon.com/LesCastCodeurs Faire un crowdcast ou une crowdquestion Contactez-nous via twitter https://twitter.com/lescastcodeurs sur le groupe Google https://groups.google.com/group/lescastcodeurs ou sur le site web https://lescastcodeurs.com/

247 episodes