Dans cet article, on va discuter d’une véritable migration d’un projet Spring Boot vers Quarkus ! On l'a testé pour vous, voici notre retour d'expérience.
Quarkus c’est un peu le super projet à la mode Java qui permet de réaliser des projets compilés en natif et donc capables de démarrer en instantané dans des conteneurs.
Pour en savoir plus, on vous encourage à écouter notre interview de Laurent Broudoux, CloudLe Cloud consiste à accéder à des ressources informatiques, à partir d'internet, via un fournisseur.-native AppDev Solution Architect chez Red Hat, c'est par ici !
Fort de notre envie de tester sur un vrai projet, nous avons pris un projet en production (certes pas le plus gros de notre projet, on n’est pas si fou que ça :)) et on a tenté de le migrer sur Quarkus. L’objectif était de vraiment se passer complètement de Spring, donc cela nous a valu de devoir réécrire des choses…
Le projet initial est un Spring BootFramework Java se basant sur Spring. avec une dizaine de ws RESTREST (REpresentational State Transfer) est un style d'architecture logicielle qui fonctionne sous un certain nombre de contraintes., une dizaine d’entités, des appels SOAPSOAP (Simple Object Access Protocol) est un protocole de communication. à des services externes, une authentification OAuth2 (AzureAzure est la plateforme de Cloud de Microsoft. ad) ainsi que du stockage sur Azure, et un petit Flyway pour la gestion de la base de données, une petite PostgreSQLMoteur de gestion de base de données libre de droit.. Cette petite APIUne API est un programme permettant à deux applications distinctes de communiquer entre elles et d’échanger des données. est utilisée par un front AngularAngular est un framework de développement JavaScript populaire basé sur TypeScript.. Tout ce qu'il y a de plus classique !
Sans suspense : nous avons réussi à le faire ! Et dans un temps globalement acceptable, environ 3 jours. Sachant que nous étions novices, nous pourrions aller beaucoup plus vite à présent !
Parlons un peu de la migration :
Nous avons pris le parti de démarrer depuis le projet Spring (compilé en Gradle) et de petit à petit le convertir en un projet Quarkus. Cette approche nous a paru plus simple que de partir d’un projet Quarkus vide et d’y mettre les classes. À l’expérience, je ne suis pas sûr que nous ayons gagné du temps, car cela nous a engendré pas mal de conflits de lib que nous aurions pu nous épargner.
Partons du début et essayons d’expliquer ce que nous avons changé :
Voilà à peu près ce que nous avons mis en oeuvre. Mais maintenant que c’est fait, c’est un vrai plaisir d’avoir une application qui démarre en instantané ! Pour le coup, la promesse est bien tenue. En plus dans notre cas cette API n’est pas utilisé souvent donc ça prend tout son sens.
Pour discuter migration de projet, n'hésitez pas à nous contacter !
Initialisation d’une API web avec le framework Spring Boot !
Migrer un projet Spring Boot vers Quarkus : nous avons testé ! Découvrez notre retour d'expérience en détails dans cet article du blog AXOTALKS.
Tuto - Moderniser l'utilisation de l'AS400 avec Java Spring Boot ! On vous explique tout pas à pas.