Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
Google App EngineM1IF38 – Programmation Web avancée et mobile
Vi-Nam KHUONG– Aurélien LEVISSE – Romain MONTERO
Sommaire!
● Notion de cloud!● App Engine ● Services!● Application ● Démonstration!● Conclusion
2
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Le Cloud
● Déporter la charge de travail ● Utiliser la puissance de serveurs distants!!
● Redimensionnement rapide ● Instance d’un nouveau serveur et mise en route en
quelques minutes !
● Plus de préoccupation pour les problèmes physiques
3
« We didn’t care where the messages went… the cloud hid it from us. » Kevin Marks, Google
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Le Cloud● Trois types différents :
● IaaS (Infrastructure as a Service) : location de moyens de calcul et de stockage avec contrôle des systèmes d’exploitation, des stockages et des applications. Ex: Amazon Web Service.!!
● PaaS (Platform as a Service) : pas de contrôle des serveurs, du stockage. Ex : Google App Engine.!!
● SaaS (Software as a Service) : aucun contrôle de l’utilisateur. Ex : Gmail.
4
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Le Cloud● Quelques grands services de cloud computing :
5
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Google App Engine● Avril 2008 : version beta / Novembre 2011 : version
officielle !
● Cloud de type PaaS !
● Langages supportés : Python, Java, PHP, Go !
● Gratuit (1Go – 5 millions de pages vues par mois)
6
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
7
Fonctionnement● A r r i v é e s u r l e
« répartiteur de charge » !
● Recherche d’un serveur disponible !
● Accès au DataStore si besoin
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Services● Google Accounts API
!● Connexion avec n’importe quel compte Gmail !
● Limitation à un domaine !
● Connexion avec un compte OpenID
8
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Services● Task Queues !● Gestion asynchrone de tâches à exécuter par App
Engine !
● Donner plus de temps pour les requêtes lourdes et non « primordiales ».
9
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Services● Cron
● Planificateur de tâches
10
Services● Cron
● Protéger les urls
11
Services● Mail API !
● Search API !
● Sockets API !
● …
12
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
DataStore● High Replication Datastore ● NoSQL ● Entité : Clé/Valeur ● Opérations :
● Get ● Put ● Delete ● query
13
Connexion
14
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Base de données
15
Possibilité d’utiliser ou non la bibliothèque « persistence » de Java
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Ajout d’un message
16
Avec « persistence » Avec la librairie Google
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Récupération d’un message
17
Avec « persistence »
Avec la librairie Google
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Démonstration● http://mif38-demo.appspot.com
18
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Bilan● Avantages
● Gratuit pour faibles fréquences d’utilisation !
● Pratique pour sites d’associations / Clubs / CV !
● Beaucoup d’API !
● Puissance de Google
19
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Vi-Nam KHUONG - Aurélien LEVISSE - Romain MONTERO
Bilan● Inconvénients
● Choix des technologies (langage, IDE) !
● Peu de documentation !
● Confier des informations à Google !
● Base de données NoSQL pour rester gratuit
20