En raison d’une maintenance technique, la boutique Editions ENI sera inaccessible ce mercredi soir à compter de 21h, jusqu’à 2h jeudi matin. Nous vous invitons à passer votre commande avant 20h30. Merci pour votre compréhension. L’équipe des Editions ENI
  1. Supports de cours
  2. AWS Lambda - Développez des micro-services en Java sur la plateforme serverless d'Amazon

AWS Lambda Développez des micro-services en Java sur la plateforme serverless d'Amazon

  • En stock
  • Expédié en 24h00
  • Personnalisable
  • Accessible immédiatement
  • Version HTML
  • Accès illimité 24h/24, 7J/7

Présentation

Véritable guide pratique sur la technologie serverless qui révolutionne actuellement les organisations IT, ce support intéressera autant les architectes logiciels que les développeurs qui souhaitent voyager au cœur du service AWS Lambda d’Amazon pour maîtriser le développement de micro-services en Java.

A base d’exemples concrets et de mini-projets de complexité élevée, le lecteur apprend ainsi à développer des applications serverless en Java, à les déployer et à les configurer sur l’infrastructure AWS Lambda ainsi qu’à les intégrer aux principaux services de la plateforme tels que API Gateway, SQS (Simple Queue Services) et DynamoDB.

Tout au long de l’ouvrage, l’approche de type micro-services est discutée et analysée au travers de scénarios d’intégration prenant en compte les spécifications Eclipse Microprofile ou l’implémentation Quarkus. Dans cette approche, l’auteur met également un accent important sur le packaging du code Java déployé ainsi que sur les tests unitaires, d’intégration et de bout en bout.

L’intégralité des exemples utilisés pour illustrer les différents concepts étudiés dans le livre est disponible en téléchargement sur le site www.editions-eni.fr ainsi que sur l’espace GitHub des Editions ENI.

Table des matières

  • Introduction au Serverless
    • 1. Introduction
    • 2. Le serverless : le stade suprême du Cloud ?
      • 2.1 Comment en est-on arrivé là ?
      • 2.2 SOA et microservices
      • 2.3 État de l’art sur l’architecture logicielle
    • 3. La "serverless attitude"
      • 3.1 Services à la demande
      • 3.2 Services légers
      • 3.3 Services lourds
      • 3.4 Services événementiels
      • 3.5 Services tiers
      • 3.6 Les pour et les contre du serverless
  • Introduction à AWS Lambda
    • 1. Introduction
    • 2. Cas d’utilisation
      • 2.1 Applications de type back-end
      • 2.2 Traitement des données
      • 2.3 Analyse en temps réel
      • 2.4 API RESTful
      • 2.5 Services planifiés
    • 3. Démarrage rapide avec AWS Lambda
      • 3.1 Démarrage rapide avec la console AWS
      • 3.2 Hello Lambda
      • 3.3 Installer l’environnement de développement
        • 3.3.1 Le JDK (Java Development Kit)
        • 3.3.2 Maven
        • 3.3.3 AWS CLI (Command Line Interface)
        • 3.3.4 AWS SAM CLI et CloudFormation
        • 3.3.5 L’IDE (Integrated Development Environment)
      • 3.4 HelloLambda en Java
        • 3.4.1 Déploiement avec le plug-in AWS Toolkit pour IntelliJ IDEA
        • 3.4.2 Tester localement avec AWS Toolkit
        • 3.4.3 Test distant avec AWS Toolkit pour IntelliJ IDEA
        • 3.4.4 Déploiement avec l’outil SAM
        • 3.4.5 Test local avec l’outil SAM
  • AWS Lambda - Développement en Java
    • 1. Introduction
    • 2. Concepts de base
      • 2.1 Types d’appels de fonctions AWS Lambda
      • 2.2 La journalisation
    • 3. Le projet Java pour AWS Lambda
      • 3.1 Création d’un template SAM personnalisé
      • 3.2 SAM et le service CloudFormation
      • 3.3 Méthodes, signatures et paramètres des fonctions Lambda en Java
  • AWS Lambda - Implémentation en Java
    • 1. Introduction
    • 2. L’interface RequestHandler
    • 3. L’utilisation des POJO (Plain Old Java Objects)
    • 4. L’interface RequestStreamHandler
  • Le développement d’API Serverless
    • 1. Introduction
    • 2. Le scénario général
    • 3. Le service API Gateway d’AWS
      • 3.1 Quelle mouture de service API Gateway ?
      • 3.2 Le service send-money
    • 4. Le projet Java
      • 4.1 Le module agrégé
      • 4.2 Le module model
      • 4.3 Le module functions
    • 5. Swagger ou OpenAPI
    • 6. API Gateway
    • 7. Déploiement et exécution
  • Fonctions Lambda événementielles
    • 1. Introduction
    • 2. Le projet Java
      • 2.1 Le fichier pom.xml
      • 2.2 La fonction Lambda FilePollerFunction
      • 2.3 L’infrastructure
    • 3. Déploiement et exécution
  • Le service SQS (Simple Queue Service)
    • 1. Introduction
    • 2. Files d’attente SQS standard
    • 3. Files d’attente SQS FIFO
    • 4. La production/consommation des messages SQS
    • 5. Le scénario de test
      • 5.1 Le projet Java
        • 5.1.1 Les fichiers pom.xml
        • 5.1.2 Le code Java
        • 5.1.3 L’infrastructure AWS
    • 6. Exécution et test
  • Le service DynamoDB
    • 1. Introduction
    • 2. Les bases de données NoSQL
    • 3. DynamoDB : la solution NoSQL d’AWS
    • 4. Le projet Java
      • 4.1 Le fichier pom.xml
      • 4.2 Le code Java
      • 4.3 Le fichier template.yaml
    • 5. Déploiement et exécution
  • Tester les fonctions Lambda
    • 1. Introduction
    • 2. La pyramide des tests
    • 3. Les tests unitaires
    • 4. Les tests d’intégration
    • 5. Les tests e2e
  • La sécurité des fonctions Lambda
    • 1. Introduction
    • 2. Court rappel de la sécurité IAM
      • 2.1 Utilisateurs, groupes et rôles
      • 2.2 Les stratégies de sécurité
    • 3. L’authentification en environnement serverless
      • 3.1 Les groupes d’utilisateurs Cognito
        • 3.1.1 Le projet Java
        • 3.1.2 Le fichier pom.xml
        • 3.1.3 Le code Java
        • 3.1.4 Le fichier template.yaml
        • 3.1.5 Déploiement et exécution
      • 3.2 Les stratégies IAM
      • 3.3 Les mécanismes d’autorisation Lambda
  • Les fonctions Lambda et Eclipse Microprofile
    • 1. Introduction
    • 2. Introduction dans Eclipse Microprofile
    • 3. Quarkus : Eclipse Microprofile par Red Hat
      • 3.1 Intégration d’AWS Lambda avec Quarkus
      • 3.2 Intégration Lambda avec Eclipse Microprofile Config
      • 3.3 Intégration Lambda avec Eclipse Microprofile Fault Tolerance
      • 3.4 Intégration Lambda avec Eclipse Microprofile HealthCheck
      • 3.5 Intégration Lambda avec Eclipse Microprofile JWT Propagation
      • 3.6 Intégration Lambda avec Eclipse Microprofile Metrics
      • 3.7 Intégration Lambda avec Eclipse Microprofile OpenAPI
      • 3.8 Intégration Lambda avec Eclipse Microprofile REST Client
  • Pour aller plus loin
    • 1. Introduction
    • 2. L’extensibilité
    • 3. Limitation, simultanéité et quotas
    • 4. Le multi-threading
    • 5. Versions, alias et déplacement de trafic
    • 6. Le démarrage à froid
    • 7. La gestion de l’état
    • 8. VPC (Virtual Private Cloud)
    • 9. Couches et environnements d’exécution
  • Conclusion
    • Index

Auteur

Nicolas DUMINILEn savoir plus

Architecte logiciel senior et expert cloud avec une vingtaine d'années d'expérience, Nicolas DUMINIL a participé à de nombreux projets de conception, de développement et d'implémentation d'architectures et d'infrastructures logicielles. Très actif dans le domaine IAC (Infrastructure As Code) et gérant du cabinet Simplex Software EURL, il prend en charge au quotidien des projets complexes à forte valeur ajoutée. Ce livre sur AWS est l'occasion pour lui de partager toute son expertise sur la gestion d'une infrastructure dans le Cloud avec les services d'Amazon.

Caractéristiques

  • Nombre de pages 294 pages
  • Parution mars 2021
    • Reliure spirale - 17 x 21 cm (Médian)
    • ISBN : 978-2-409-02837-3
    • EAN : 9782409028373
    • Ref. ENI : EIMAWSL
  • Parution mars 2021
    • HTML
    • ISBN : 978-2-409-02838-0
    • EAN : 9782409028380
    • Ref. ENI : LNEIMAWSL