Jump to section

Tout savoir sur Quarkus

Copier l'URL

Quarkus est un framework Java natif pour Kubernetes complet, conçu pour les machines virtuelles Java (JVM) et la compilation native, qui permet d'optimiser Java spécifiquement pour les conteneurs afin d'en faire une plateforme efficace pour les environnements serverless, cloud et Kubernetes.

Quarkus est conçu pour fonctionner avec les normes, frameworks et bibliothèques Java les plus utilisés, tels que Spring et Eclipse MicroProfile, ainsi que Apache Kafka, RESTEasy (JAX-RS), Hibernate ORM (JPA), Infinispan, Camel et beaucoup d'autres.

La solution d'injection de dépendances de Quarkus utilise la spécification CDI (Contexts and Dependency Injection). Quarkus inclut aussi un framework d'extension qui permet de l'enrichir et de configurer, de démarrer et d'intégrer un framework dans votre application. Il est aussi simple d'ajouter une extension qu'une dépendance. Vous pouvez sinon utiliser les outils de Quarkus.

Ce framework permet aussi la compilation native de vos applications avec GraalVM (une machine virtuelle universelle qui exécute des applications rédigées dans de nombreux langages, y compris Java et JavaScript).

4 raisons d'utiliser Quarkus

De nombreux développeurs utilisent encore le langage de programmation Java™, mais l'évolution des technologies cloud-native, comme Kubernetes et le serverless commencent à poser certains problèmes. Découvrez pourquoi Quarkus est le framework de développement Java idéal pour travailler avec Knative et l'informatique serverless.

Quarkus a été conçu comme une solution facile à prendre en main dès le démarrage, avec des fonctions qui nécessitent peu de configuration.

Les développeurs peuvent choisir les frameworks Java pour leurs applications, qui peuvent être exécutées en mode JVM ou compilées, puis exécutées en mode natif.

Conçu pour simplifier la tâche des développeurs, Quarkus inclut également les fonctions suivantes :

  • Rédaction de code en direct, pour permettre aux développeurs de vérifier immédiatement l'effet des modifications apportées au code et de corriger rapidement les problèmes
  • Programmation à la fois impérative et réactive avec un bus d'événements géré intégré
  • Configuration unifiée
  • Génération native et facile d'exécutables

Qu'une application soit hébergée dans un cloud public ou dans un cluster Kubernetes hébergé au sein de l'entreprise, des caractéristiques telles que la rapidité du démarrage et la faible consommation de mémoire permettent de maintenir des coûts d'hôte totaux bas.

Quarkus a été conçu selon un modèle centré sur les conteneurs. Il consomme donc peu de mémoire et accélère le démarrage, notamment grâce aux points suivants :

  • Prise en charge efficace de Graal/SubstrateVM
  • Traitement des métadonnées au moment de la création
  • Réduction de l'utilisation de la réflexion
  • Préchargement d'image native

Par rapport aux applications Java traditionnelles, les applications créées avec Quarkus consomment 10 fois moins de mémoire et démarrent plus rapidement (jusqu'à 300 fois plus vite), ce qui permet de réduire considérablement le coût des ressources cloud.

Le framework Quarkus associe de manière transparente la programmation impérative bien connue des développeurs à l'approche réactive et non bloquante pour le développement des applications.

Ainsi, il satisfait à la fois les développeurs Java habitués à travailler selon le modèle impératif et qui souhaitent le conserver, et les développeurs qui travaillent avec une approche cloud-native/réactive.

Le modèle de développement de Quarkus s'adapte à l'application que vous développez.

Quarkus est donc une solution efficace pour exécuter Java à l'ère des architectures serverless, des microservices, des conteneurs, de Kubernetes, du FaaS et du cloud, puisqu'elle a été conçue en tenant compte de tous ces éléments.

Pour aller plus loin

ARTICLE

Stateful et stateless : quelle est la différence ?

Les qualificatifs « stateful » ou « stateless » dépendent de la durée pendant laquelle l'état de l'interaction avec un élément est enregistré ainsi que de la manière dont cette information doit être stockée.

ARTICLE

Quarkus, qu'est-ce que c'est ?

Quarkus est une pile Java native pour Kubernetes conçue pour les machines virtuelles Java (JVM) et la compilation native, qui permet d'optimiser Java spécifiquement pour les conteneurs.

ARTICLE

Le serverless ou informatique sans serveur, qu'est-ce que c'est ?

Le serverless est un modèle de développement cloud-native qui permet aux développeurs de créer et d'exécuter des applications sans avoir à gérer des serveurs.

En savoir plus sur les applications cloud-native

Produits

Une plateforme d'applications d'entreprise comprenant un ensemble unifié de services testés conçus pour distribuer des applications sur votre choix d'infrastructure.

Ressources

Formations

Formation gratuite

Développement d'applications cloud-native avec des architectures de microservices