Published: Dec. 13, 2019, 5:52 p.m.
Guillaume, Arnaud et Emmanuel descendent dans les profondeurs des garbage collectors, Java 14, GraalVM 19.3 (Java is back!) et bien s\xfbr pleins d\u2019autres choses !
Enregistr\xe9 le 5 d\xe9cembre 2019
T\xe9l\xe9chargement de l\u2019\xe9pisode LesCastCodeurs-Episode\u2013221.mp3
News Langages
GraalVM 19.3 with JDK 11 Support.
GraalVM se met aussi \xe0 WebAssembly
Microsoft ready to contribute to OpenJDK
Trois JEPs pr\xe9vus pour \xeatre int\xe9gr\xe9s \xe0 Java 14 :
Stephen Colebourne r\xe2le 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\u2019alloc, ca veut dire qu\u2019il vide jusqu\u2019\xe0 1x amis declenche des GC super fr\xe9quement
- donc en allouant (virtuellement) in tableau de 10Go, on reduit de temps entre GC
- le cout d\u2019un concurrent mark sweep c\u2019est 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\u2019est 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\u2019objet meme de ses references
- puis mets a jour les references de maniere concurrente en parallele de l\u2019appli
- et enfin peut virer les objets.
- par default Shenandoah demande un word suppl\xe9mentaire par objet
- si le word == l\u2019objet, on est normal, sinon il pointe vers la nouvelle copie de l\u2019objet
- 5 \xe0 10% de m\xe9moire suppl\xb4mentaire 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\xe9coding suppl\xe9mentaire est pas visible dans les benchmarks
- mais ils ont elimin\xe9 les read barrier en load-reference-barrier qui sont moins frequentes en nombre d\u2019objet
- meilleure densit\xe9 m\xe9moire, 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\xe9 et moins de classes \xe0 d\xe9marrer, 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\xe9
Annonce par Sonatype du rachat
- par une boite de private equity\u2026
- il est temps de backuper central
Docker \xe0 la d\xe9coupe. Docker Enterprise rachet\xe9 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\xe9ussit \xe0 f\xe2cher Kohsuke ).
Data
R2DBC 0.8
Exposer les entit\xe9s persist\xe9es dans vos API ou pas
- Plus simple, une seul objet
- plus compliquer des details d\u2019implementations (nouveau champ d\u2019un cote ou de l\u2019autre)
- accumulation d\u2019annotations pour abstraire ses mod\xa1eles (JSON, JPA)
- associations g\xe9r\xe9 en proxy dans JPA et en id ou null dans API
- V2 de l\u2019API
- aggregation des donn\xe9es dans l\u2019API
Outillage
La matrice arrive dans Jenkins Pipelines.
Jenkins Health Advisor par CloudBees.
L\u2019experience zsh de Julien Ponge
C\xe9dric explose le mythe du scripting vs d\xe9claratif dans Gradle
Comment \xe9viter l\u2019enfer des d\xe9pendances avec Gradle 6
M\xe9thodologies
L\u2019humain est r\xe9siliant aux chocs de la vie mais pas tant que cela `au chomage de longue dur\xe9e
- etude
- Plus on est dans un pays d\xe9velopp\xe9, plus on est heureux
- on est plus heureux maintenant qu\u2019il y a quelques ann\xe9es (croissance)
- plus on est riche, plus on est heureux
Loi, soci\xe9t\xe9 et organisation
Save your code on Software Heritage Archive.
Conf\xe9rences
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/