Skip to main content

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.