BT

Diffuser les Connaissances et l'Innovation dans le Développement Logiciel d'Entreprise

Contribuez

Sujets

Sélectionner votre région

Accueil InfoQ Actualités Spring Boot 2.6 Améliore Les Images Docker Et Les Métriques, Sa Version 2.4 Est EOL

Spring Boot 2.6 Améliore Les Images Docker Et Les Métriques, Sa Version 2.4 Est EOL

VMware a publié Spring Boot 2.6. Deuxième et dernière version de fonctionnalités de 2021, elle améliore la construction d'images Docker, fournit plus d'informations sur la santé et la gestion, et permet de tester les applications Spring MVC avec l'interface WebTestClient. Cette version met également à jour les dépendances, telles que Spring Security 5.6, Spring Data 2021.1, Spring Kafka 2.8, Hibernate 5.6, Kotlin 1.6 et JUnit 5.8.

Correction de la vulnérabilité Log4jShell

Une vulnérabilité sérieuse a récemment été découverte dans la populaire bibliothèque Log4j, permettant aux attaquants d'exécuter du code malveillant à distance. L'équipe de Spring Boot a signalé que les utilisateurs ne seraient affectés que si Log4j était choisi comme bibliothèque de journalisation par défaut. Plus de détails sur la vulnérabilité de Log4j peuvent être trouvés dans cette news d'InfoQ.

Spring Boot 3

VMware procède actuellement à la refonte de Spring et Spring Boot. Spring 6 exigera Java 17 et Jakarta EE 9 comme versions minimales et fournira un support de premier ordre pour les modules Java et la compilation native. Les applications Java compilées en mode natif démarrent beaucoup plus rapidement et utilisent moins de mémoire au moment de l'exécution. Spring 6 intégrera également l'observabilité dans Spring et abandonnera les fonctionnalités obsolètes et les intégrations tierces. Spring Boot 3 utilisera Spring 6 et est attendu pour la fin de l'année 2022 au plus tôt.

Spring Native crée des exécutables natifs pour les applications Spring. Sa version 0.11 s'appuie sur GraalVM 21.3 et Spring Boot 2.6.

L'annonce a désigné Spring Boot 2.4.13 comme la dernière version open-source de Spring Boot 2.4. Cela montre une durée de vie plus courte des versions de Spring Boot dans la nouvelle cadence de publication de six mois : Spring Boot 2.2 avait durée 456 jours, Spring Boot 2.3 avait durée 391 jours, et Spring Boot 2.4 est descendu à 371 jours. Cette tendance devrait se poursuivre avec Spring 6 et Spring Boot 3, comme l'a récemment expliqué VMware :

Les utilisateurs de Spring Framework 6 sont fortement encouragés à rejoindre notre flux de releases de fonctionnalités, sans s'attendre à rester longtemps sur la version 6.0.x mais plutôt en faisant des mises à jour 6.1, 6.2, etc. comme partie intégrante de leur modèle d'utilisation régulière.

Le support commercial est toujours disponible pour les versions 2.2 et supérieures de Spring Boot.

Spring Boot 2.6.1 a suivi juste dix jours après la version 2.6. Les versions 2.3, 2.4 et 2.5 de Spring Boot ont pris 2 à 3 fois plus de temps jusqu'à leur première version ponctuelle : 28 jours, 29 jours et 20 jours respectivement.

Les modifications notables dans la version

La construction d'image Docker voit diverses améliorations : les images peuvent obtenir des balises supplémentaires, le pilote réseau du conteneur qui exécute le processus de construction Cloud Native Buildpacks peut être configuré, et les noms de volume que les buildpacks utilisent pour mettre en cache les couches d'images peuvent être personnalisés.

Les groupes de santé peuvent désormais utiliser un chemin supplémentaire sur le port principal ou le port de gestion pour améliorer la sécurité. Les contrôles de vivacité et de disponibilité de Kubernetes bénéficieront de cette fonctionnalité. Les groupes de santé peuvent également inclure ou exclure des parties d'une interface CompositeHealthContributor.

Spring Boot expose de nouvelles métriques, telles que l'heure de démarrage de l'application, le temps de démarrage de l'application, l'espace disque libre et total pour la partition du répertoire de travail actuel, les statistiques du pool de threads et les statistiques de connexion Jetty et SSL. Spring Boot est désormais capable d'exporter des métriques vers l'API Dynatrace v2.

Spring Boot propose désormais une auto-configuration pour Spring Data Envers et le nouveau module spring-rabbit-stream de Spring AMQP. Le PollerMetadata de Spring Integration (qui interroge un nombre illimité de messages) peut désormais être personnalisé grâce aux propriétés spring.integration.poller.*.

La configuration composite de Log4j2 peut maintenant être utilisée : la définition de la propriété logging.log4j2.config.override sur une liste de fichiers de configuration séparés par des virgules remplacera la configuration principale. Les applications peuvent définir l'attribut "SameSite" sur les cookies de session d'une application servlet.

Le messages.properties de l'application est désormais utilisé lors de la résolution de {parameters} dans les messages de validation des beans. Les propriétés de session pour les serveurs réactifs sont disponibles sous server.reactive.session et offrent une parité avec les versions des servlets.

La nouvelle annotation @WebServiceServerTest crée un test avec des beans @Endpoint et configure automatiquement un bean MockWebServiceClient pour tester les endpoints de service Web.

Les propriétés wait et maxAttempts du goal start du plugin Maven peuvent désormais être configurées à partir de la ligne de commande. Et des propriétés spécifiques peuvent être exclues du build-info.properties généré par les plugins Spring Boot Maven ou Gradle.

Cette version fournit également des mises à jour de Spring HATEOAS 1.4, Spring AMQP 2.4, et Spring Session 2021.1.0. Les autres mises à jour non Spring notables sont des pilotes de base de données, Micrometer 1.8 et Mockito 4.0.

Les notes de mise à jour énumèrent toutes les mises à niveau et les changements notables.

 

Evaluer cet article

Pertinence
Style

Contenu Éducatif

BT