Blog ENI : Toute la veille numérique !
🐠 -25€ dès 75€ 
+ 7 jours d'accès à la Bibliothèque Numérique ENI. Cliquez ici
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Supports de cours
  2. Quarkus - Développer des applications microservices en Java pour le cloud et Kubernetes

Quarkus Développer des applications microservices en Java pour le cloud et Kubernetes

Informations

Livraison possible dès le 28 mai 2024
  • Personnalisable
Livres rédigés par des auteurs francophones et imprimés à Nantes

Caractéristiques

  • Reliure spirale - 17 x 21 cm (Médian)
  • ISBN : 978-2-409-04082-5
  • EAN : 9782409040825
  • Ref. ENI : EIMQUARK

Informations

  • Consultable en ligne immédiatement après validation du paiement et pour une durée de 10 ans.
  • Version HTML
Livres rédigés par des auteurs francophones et imprimés à Nantes

Caractéristiques

  • HTML
  • ISBN : 978-2-409-04083-2
  • EAN : 9782409040832
  • Ref. ENI : LNEIMQUARK
Que vous soyez développeur ou architecte, ce support a pour objec­tif de vous faire découvrir Quarkus, le framework de dévelop­pement d’applications microservices en Java pour le cloud et Kubernetes. Il vous explique comment tirer parti de ses nom­breuses fonctionnalités et extensions pour concevoir des appli­cations prêtes à être déployées dans le cloud ou Kubernetes.   Tout au long de ce support, vous serez guidé dans l’utilisation du framework et de son outillage avec de nombreux...
Aperçu du livre papier
  • Niveau Confirmé à Expert
  • Parution septembre 2023
  • Niveau Confirmé à Expert
  • Parution septembre 2023
Que vous soyez développeur ou architecte, ce support a pour objec­tif de vous faire découvrir Quarkus, le framework de dévelop­pement d’applications microservices en Java pour le cloud et Kubernetes. Il vous explique comment tirer parti de ses nom­breuses fonctionnalités et extensions pour concevoir des appli­cations prêtes à être déployées dans le cloud ou Kubernetes.  

Tout au long de ce support, vous serez guidé dans l’utilisation du framework et de son outillage avec de nombreux exemples concrets dans le but de devenir autonome dans le développe­ment d’applications avec Quarkus.  

Après avoir étudié les fonctionnalités de base du framework telles que la configuration, les logs ou l’injection de dépen­dances, vous découvrirez les principales extensions de Quar­kus notamment RESTEasy pour le développement de services web RESTFull, le client REST pour accéder à un service distant, ou encore Hibernate ORM with Panache et MongoDB with Panache pour l’accès aux données.  

Ce support vous permettra également une étude en profondeur de Quarkus pour le développement d’applications réactives, l’uti­lisation des fonctionnalités cloud ready et cloud natives, le sup­port de Docker et de Kubernetes et le déploiement des applica­tions vers les trois grands fournisseurs cloud que sont Amazon Web Services, Google Cloud Platform et Microsoft Azure.  

Pour finir, vous découvrez comment créer votre propre extension Quarkus.  

Les exemples de ce support sont disponibles en téléchargement sur le site www.editions-eni.fr.

Téléchargements

Avant-propos
  1. 1. Objectifs du livre
  2. 2. Public visé
  3. 3. Prérequis
  4. 4. Choix pédagogiques
Quarkus : carte d'identité
  1. 1. Qu’est-ce que Quarkus ?
  2. 2. Les piliers de Quarkus
    1. 2.1 Developer Joy
    2. 2.2 Pensé pour les conteneurs et Kubernetes
    3. 2.3 Librairies reconnues et standards
    4. 2.4 Unification des styles de développement impératif et réactif
  3. 3. La philosophie de Quarkus
  4. 4. Le temps de démarrage et l’empreinte mémoire
  5. 5. Le support de GraalVM
Introduction à Cloud Ready et Cloud Native
  1. 1. Cloud Ready
  2. 2. Applications prévues pour les conteneurs
  3. 3. Cloud Native
Développement d'applications avec Quarkus
  1. 1. Création d’un projet avec la ligne de commande, code.quarkus.io ou un IDE
  2. 2. Anatomie d’un projet Quarkus
  3. 3. Bases : configuration, logs, injection de dépendances et tests
    1. 3.1 La configuration
    2. 3.2 Les logs
    3. 3.3 L'injection de dépendances
    4. 3.4 Les tests
  4. 4. Developer Joy : dev mode, dev UI, continuous testing, dev services
    1. 4.1 Le dev mode
    2. 4.2 La dev UI
    3. 4.3 Le continuous testing
    4. 4.4 Les dev services
  5. 5. Webservice REST avec JAX-RS
    1. 5.1 Les extensions HTTP
    2. 5.2 Le développement d’un endpoint REST avec JAX-RS
    3. 5.3 Le support de JSON
    4. 5.4 L’implémentation des tests de son endpoint REST via JUnit
    5. 5.5 Le démarrage et le test de l’application en local
    6. 5.6 La gestion des exceptions
    7. 5.7 Les annotations spécifiques RESTEasy Reactive
    8. 5.8 Le contexte et le filtre
  6. 6. Documentation d’API avec OpenAPI
  7. 7. Appel d’un autre service web avec le client REST
  8. 8. Fonctionnalités HTTP
    1. 8.1 Servir du contenu statique
    2. 8.2 CORS - Cross-Origin Resource Sharing
    3. 8.3 La configuration HTTP
    4. 8.4 La sécurisation des connexions avec SSL
  9. 9. Sécurité : authentification et habilitation
    1. 9.1 L’authentification via fichier de configuration
    2. 9.2 L’habilitation via annotations
    3. 9.3 L’habilitation via fichier de configuration
    4. 9.4 Le test d’un endpoint sécurisé
  10. 10. Applications ligne de commande
L'accès aux bases de données
  1. 1. Datasource et transaction
    1. 1.1 Datasource et driver JDBC
    2. 1.2 Gestion des transactions
  2. 2. Gestion de migration de base de données
    1. 2.1 Gestion de schéma avec Liquibase
    2. 2.2 Migration de base de données avec Flyway
  3. 3. Hibernate ORM
  4. 4. Gestion du cache
  5. 5. Bean validation
  6. 6. NoSQL avec MongoDB
Développement d’applications réactives
  1. 1. Architecture réactive et application réactive
  2. 2. Vert.x : le cœur réactif de Quarkus
  3. 3. Mutiny
  4. 4. Webservice REST réactif avec RESTEasy Reactive
  5. 5. Base de données réactive avec Hibernate Reactive
    1. 5.1 Reactive SQL Clients
    2. 5.2 Hibernate Reactive with Panache
    3. 5.3 Support des transactions réactives
  6. 6. NoSQL réactif avec MongoDB
  7. 7. REST client réactif
  8. 8. Reactive Routes
  9. 9. Messaging réactif avec Apache Kafka
    1. 9.1 Recevoir des messages
    2. 9.2 Envoyer des messages
    3. 9.3 Traiter des messages
    4. 9.4 Configurer les canaux
    5. 9.5 Tester
Cloud Ready
  1. 1. Test de santé
  2. 2. Métrologie
  3. 3. OpenTracing et OpenTelemetry
  4. 4. Tolérance à la panne
    1. 4.1 Rejeux
    2. 4.2 Temps d’attente
    3. 4.3 Circuit breaker
    4. 4.4 Fallback
    5. 4.5 Configuration
  5. 5. Service discovery et load balancing client
    1. 5.1 Service discovery avec Stork
    2. 5.2 Load balancing client avec Stork
Compilation d’images natives avec GraalVM
  1. 1. Le projet GraalVM
  2. 2. La compilation native
  3. 3. Les pièges et comment les contourner grâce à Quarkus
    1. 3.1 L’initialisation de classe au runtime
    2. 3.2 L’inclusion des ressources
    3. 3.3 Le support de la réflexion
  4. 4. Tester une image native
  5. 5. Monitorer et déboguer une image native
    1. 5.1 Génération d’un thread dump
    2. 5.2 Génération d’un heap dump
    3. 5.3 Mémoire et Garbage Collector
    4. 5.4 Débogage d’une application native avec GDB
    5. 5.5 Monitoring d’une application native avec Java Flight Recorder
Conteneurisation et Kubernetes
  1. 1. Conteneurisation
    1. 1.1 Utilisation d’images fournies à la création d’un projet
    2. 1.2 Génération automatique d’une image Docker
  2. 2. Génération de ressources Kubernetes et OpenShift
    1. 2.1 Génération de ressources Kubernetes
    2. 2.2 Génération de ressources OpenShift
  3. 3. Déploiement dans Kubernetes
    1. 3.1 Configuration des ressources des conteneurs
    2. 3.2 Sondes Kubernetes
    3. 3.3 Déploiement dans Kubernetes avec Quarkus
    4. 3.4 Déploiement via Helm
    5. 3.5 Débogage à distance
  4. 4. ConfigMap, Secret et Service Binding
    1. 4.1 ConfigMap et Secret
    2. 4.2 L'extension Kubernetes Config
    3. 4.3 Service Binding
  5. 5. Interagir avec un cluster Kubernetes
Déployer dans Amazon Web Services
  1. 1. AWS Lambda
    1. 1.1 Quarkus Amazon Lambda
    2. 1.2 Quarkus Amazon Lambda HTTP
    3. 1.3 Amazon Lambda SnapStart
  2. 2. Services AWS : S3, SNS...
    1. 2.1 Configuration et authentification
    2. 2.2 Amazon S3
    3. 2.3 Amazon SNS
    4. 2.4 Amazon DynamoDB
    5. 2.5 Amazon Secrets Manager
Déployer dans Google Cloud Platform
  1. 1. Google Cloud Functions
    1. 1.1 Quarkus Google Cloud Functions
    2. 1.2 Quarkus Google Cloud Functions HTTP
  2. 2. Google App Engine
    1. 2.1 Google AppEngine standard runtime
    2. 2.2 Google AppEngine custom runtime
  3. 3. Google Cloud Run
  4. 4. Services GCP : Storage, PubSub...
    1. 4.1 Configuration et authentification
    2. 4.2 Google Cloud Storage
    3. 4.3 Google Cloud PubSub
    4. 4.4 Google Cloud Firestore
    5. 4.5 Google Cloud Secret Manager
Déployer dans Microsoft Azure
  1. 1. Azure Functions
  2. 2. Azure App Service
  3. 3. Azure Container Apps
Funqy : des fonctions portables
  1. 1. Développer une fonction événementielle avec Funqy
  2. 2. Développer une fonction HTTP avec Funqy
  3. 3. Déployer une fonction Funqy dans AWS
    1. 3.1 Déployer une fonction Funqy événementielle dans AWS
    2. 3.2 Déployer une fonction Funqy HTTP dans AWS
  4. 4. Déployer une fonction Funqy dans Google Cloud
    1. 4.1 Déployer une fonction Funqy événementielle dans Google Cloud
    2. 4.2 Déployer une fonction Funqy HTTP dans Google Cloud
  5. 5. Funqy Knative Eventing
Développer une extension Quarkus
  1. 1. Build versus Runtime
  2. 2. Les trois phases de bootstrapping
  3. 3. Steps et items
  4. 4. Jandex
  5. 5. Développer une extension pas à pas
    1. 5.1 Configurer une extension
    2. 5.2 Ajouter un bean CDI
    3. 5.3 Utiliser Jandex et enregistrer pour réflexion
    4. 5.4 Aller plus loin
Conclusion
  1. 1. Conclusion
  2. 2. Aller plus loin
  3.  
  4.  
  5.  
  6. Index
Auteur : Loïc MATHIEU

Loïc MATHIEU

Anciennement consultant formateur chez Zenika Lille, Loïc MATHIEU est aujourd’hui Lead Software Engineer chez Kestra Technologies (https://kestra.io) où il a pour mission d’aider à créer un SaaS pour l'orchestrateur de données Kestra. Également Google Developer Expert (GDE) Google Cloud, il réalise des tâches variées autour de Java, de la JVM, de l’architecture solution et de la performance. Ni le cloud, ni Kubernetes ne lui font peur ; il aime relever des défis et apprendre de nouvelles choses. Contributeur Quarkus depuis plus de 4 ans, il participe à la création de plusieurs extensions et présente régulièrement Quarkus (et d’autres sujets) dans des meetups, des conférences ou sur son blog (https://loicmathieu.fr).
En savoir plus

Nos nouveautés

voir plus