26
Meetup #1 - LAWS AWS Lambda - Awesome Photo Contest 1

[Laws] Meetup - AWS Lambda

Embed Size (px)

Citation preview

Page 1: [Laws] Meetup - AWS  Lambda

Meetup #1 - LAWSAWS Lambda - Awesome Photo Contest

1

Page 2: [Laws] Meetup - AWS  Lambda

Qui suis-je ?○ Robin Mizreh

○ Développeur “backend” @Corexpert

○ Plusieurs expériences sur AWS en production

2

Page 3: [Laws] Meetup - AWS  Lambda

AWS Lambda○ Infrastructures managées “SysAdmin Killer”○ Micro services○ Flexible

3

Page 4: [Laws] Meetup - AWS  Lambda

Hello World !

4

Page 5: [Laws] Meetup - AWS  Lambda

Contexte○ Événementiel

○ Éphémère

○ Ressources limitées

5

Page 6: [Laws] Meetup - AWS  Lambda

Awesome Photo Contest○ Upload d’images/photos

○ Traitements sur les images

○ Générateur de mosaïques

6

Page 7: [Laws] Meetup - AWS  Lambda

Les Contraintes○ Pas de gestion de serveurs (serverless)

○ Infrastructure élastique (scalable)

○ Coût minimum par requête

7

Page 8: [Laws] Meetup - AWS  Lambda

Infrastructure

8

Page 9: [Laws] Meetup - AWS  Lambda

Mise en place

○ Un espace de stockage (Bucket S3)

○ Un utilisateur IAM

○ Du code (backend et frontend)

9

Page 10: [Laws] Meetup - AWS  Lambda

Ce que nous allons faire

○ Création d’une API

○ Déploiement

○ Évolution

10

Page 11: [Laws] Meetup - AWS  Lambda

Source de la demo

11

https://github.com/RobinMCXP/laws_awesome_demo

Page 12: [Laws] Meetup - AWS  Lambda

Fil d’ariane○ Authentification du formulaire d’upload○ Traitement des images○ Générateur de Mosaïques○ Déploiement des services sous forme d’API○ Mise en place de la partie frontend○ Résultat

12

Page 13: [Laws] Meetup - AWS  Lambda

Fil d’ariane○ Authentification du formulaire d’upload○ Traitement des images○ Générateur de Mosaïques○ Déploiement des services sous forme d’API○ Mise en place de la partie frontend○ Résultat

13

Page 14: [Laws] Meetup - AWS  Lambda

Lambda 1 - Get Signature

14

Page 15: [Laws] Meetup - AWS  Lambda

Fil d’ariane○ Authentification du formulaire d’upload○ Traitement des images○ Générateur de Mosaïques○ Déploiement des services sous forme d’API○ Mise en place de la partie frontend○ Résultat

15

Page 16: [Laws] Meetup - AWS  Lambda

Lambda 2 - Process

16

Page 17: [Laws] Meetup - AWS  Lambda

Fil d’ariane○ Authentification du formulaire d’upload○ Traitement des images○ Générateur de Mosaïques○ Déploiement des services sous forme d’API○ Mise en place de la partie frontend○ Résultat

17

Page 18: [Laws] Meetup - AWS  Lambda

Lambda 3 - Mosaïque

18

Page 19: [Laws] Meetup - AWS  Lambda

Fil d’ariane○ Authentification du formulaire d’upload○ Traitement des images○ Générateur de Mosaïques○ Déploiement des services sous forme d’API○ Mise en place de la partie frontend○ Résultat

19

Page 20: [Laws] Meetup - AWS  Lambda

Fil d’ariane○ Authentification du formulaire d’upload○ Traitement des images○ Générateur de Mosaïques○ Déploiement des services sous forme d’API○ Mise en place de la partie frontend○ Résultat

20

Page 21: [Laws] Meetup - AWS  Lambda

Fil d’ariane○ Authentification du formulaire d’upload○ Traitement des images○ Générateur de Mosaïques○ Déploiement des services sous forme d’API○ Mise en place de la partie frontend○ Résultat

21

Page 22: [Laws] Meetup - AWS  Lambda

Ce qu’il faut retenir○ Mise en place du Backend rapide et efficace

○ Plus de temps pour la partie frontend

○ Coût estimé pour 1M requêtes, 100K images et 100Go de stockage ~ 18$ par mois

22

Page 23: [Laws] Meetup - AWS  Lambda

Uses Cases○ Processing parallélisables (images, concat PDF…)○ RealTime Analytics○ Batchs○ IoT, “Event Driven” (Bot Slack, Philips Hue, IFTTT...)○ Transformation de flux de données

23

Page 24: [Laws] Meetup - AWS  Lambda

Conclusion

○ Facile à prendre en main○ Coût réduit et uniquement à l’invocation○ Élastique et évolutif○ Moins approprié à de grosses applications contenant

beaucoup de routes et de dépendanceshttps://aws.amazon.com/fr/lambda/

24

Page 25: [Laws] Meetup - AWS  Lambda

Questions ?

25

Page 26: [Laws] Meetup - AWS  Lambda

Merci !

26