ADR 001 : Adoption de Quarkus comme framework principal
Statut
info
Accepté
Contexte
Open ENT utilise un framework Java classique basé sur Java EE/Spring. La migration vers Quarkus a été envisagée pour profiter d'un démarrage plus rapide, d'une consommation de mémoire réduite, et d'une meilleure intégration avec les technologies cloud-native.
Décision
Nous avons décidé d'adopter Quarkus comme framework principal pour la migration de notre application Open ENT.
- Performances : Quarkus offre un démarrage rapide (important pour les applications cloud-native) et une consommation de mémoire réduite.
- Développement Cloud-Native : Quarkus est conçu pour Kubernetes et offre une meilleure intégration avec les services cloud modernes.
- Interopérabilité : Quarkus supporte les standards Java EE et MicroProfile, facilitant la migration depuis des applications basées sur Java EE.
- Intégration avec Vert.x : Quarkus s'appuie sur Vert.x
Conséquences
-
✅ Avantages :
- Meilleures performances en termes de démarrage et de consommation de ressources.
- Intégration simplifiée avec les environnements cloud et Kubernetes.
- Adoption des standards modernes et des technologies cloud-native.
-
🚫 Inconvénients :
- Nécessite la réécriture ou l'adaptation de certaines parties du code existant.
- Courbe d'apprentissage pour l'équipe de développement.
- Possible besoin de modifications dans les pipelines CI/CD pour s'adapter à Quarkus.
💡 Alternatives Considérées
- Spring Boot : Plus loin de l'architecture actuelle
- Micronaut : Concurrence directe de Quarkus, avec des caractéristiques similaires mais un écosystème plus petit.