SlideShare une entreprise Scribd logo
1  sur  24
Google App Engine 



         Sameh Mtibaa
         Ben Mzoughia
Sommaire
• Introduction
• Stockage des données
• Sécurité & confidentialité
• Tarification
• Administration
• Conclusion




                                2
Sommaire
•   • Introduction
•   • Stockage des données
•   • Sécurité & confidentialité
•   • Tarification
•   • Administration
•   • Conclusion




                                   3
Définition
Le cloud computing est un concept majeur
   faisant référence à l'utilisation de la mémoire
   et des capacités de calcul des ordinateurs et
   des serveurs répartis dans le monde entier
   et liés par un réseau.




   «Google App Engine est une plateforme
     de conception et d’hébergement d'
     applications web basée sur les
     serveurs de Google.



                       1. Introduction           4
Présentation technique

Déploiement d’applications web sur
l’infrastructure Google

Support Python, Java 6

Nombreux services techniques




                               1. Introduction   5
Limitations

   Pas de Thread

   Pas d’accès aux fichiers

   Timeout de 30 s

   Supporte un sous-ensemble des classes Java

   Quotas d’utilisations




                                          1. Introduction   6
Services supplémentaires
   MemCache : Un Cache en mémoire au-dessus de la base de donnée

   URL Fetch : permet de faire des requêtes HTTP/HTTPS sur un autre
    serveur.

   Email : permet d’envoyer et de recevoir des emails.

   Google Accounts : permet d’utiliser les comptes Google pour des
    identifications au sein d’une application.

   XMPP : Protocole messagerie instantanée, Permet d’envoyer et
    recevoir des messages au format XMPP (utilisé dans Google Talk)

   Image Manipulation: permet de manipuler des images (rotation..)

   CRON: Il est possible de planifier des tâches à exécuter de manière
    récurrente pour, par exemple, envoyer une newsletter chaque mois.

   TaskQueue : permet de mettre des tâches de fond en file d’attente.
                                              1. Introduction             7
Librairies et API
•       Support d’un sous-ensemble du JDK
•       Support de quelques API (JSP, JPA, …)
•       Nombre de librairies ne fonctionnent pas
•       (Hibernate, Apache POI, …)




    Google Web Toolkit
    •    Sortie simultanée GWT 1.6 et GAE/J
    •    Alternatives : Flex, JSF, Silverlight, …
    •    Difficulté d’intégration avec DataStore




                                                    1. Introduction   8
1. Introduction   9
Exemple de code java


Exemple de code pour une servlet helloworld :

package helloworld;
import java.io.IOException;
import javax.servlet.http.*;
    public class HelloServlet extends HttpServlet {
          public void doGet(HttpServletRequest (HttpServletResponse
    resp) throws IOException {
         resp.setContentType("text/plain");
         resp.getWriter().println("Hello ");
}}




                                                1. Introduction       10
Sommaire
•   • Introduction
•   • Stockage des données
•   • Sécurité & confidentialité
•   • Tarification
•   • Administration
•   • Conclusion




                               2. Stockage des données   11
 base de données 
                orientée colonnes




2. Stockage des données             12
Sommaire
•   • Introduction
•   • Stockage des données
•   • Sécurité & confidentialité
•   • Tarification
•   • Administration
•   • Conclusion




                             3. Sécurité & confidentialité   13
• Sécurité & confidentialité
 Identification




                 3. Sécurité & confidentialité   14
Confidentialité
                   Vos données sont
                 stockées chez Google




Votre code est                              Google est
 stocké chez                                une société
   Google                                     de droit
                                             américain

                        3. Sécurité & confidentialité     15
Sommaire
•   • Introduction
•   • Stockage des données
•   • Sécurité & confidentialité
•   • Tarification
•   • Administration
•   • Conclusion




                                   4. Tarification   16
Tarification




               4. Tarification   17
Sommaire
•   • Introduction
•   • Stockage des données
•   • Sécurité & confidentialité
•   • Tarification
•   • Administration
•   • Conclusion




                                   5. Administration   18





    5. Administration   19
Console d’administration
•   DashBoard : Graphique et états sur l’utilisations des
    ressources
•   Logs: Equivaut un peu à system.out ce sont les logs de
    votre application
•   Datastore Viewer : Pour voir le contenu de votre base de
    données
•   Application Settings : Paramétrage de votre application
•   Permissions : Pour gérer les permissions sur votre
    application
•   Version : Pour gérer les différentes versions de votre
    application.


                                     5. Administration         20
Sommaire
•   • Introduction
•   • Stockage des données
•   • Sécurité & confidentialité
•   • Tarification
•   • Administration
•   • Conclusion




                                   6. Conclusion   21
Conclusion
•   Des limites opérationnelles
•   Pas de serveur de secours
•   Pas de backup des données (en cours…)
•   Le langage PHP n'est pas directement supporté.
    Mais on peut cependant l'utiliser par le biais de
    Quercus, qui porte PHP sur Java.

•   Les Webservices REST sous Android avec App
    Engine, Restlet et Objectify
•   https://appengine.google.com/
•   https://developers.google.com/appengine/?hl=fr


                                         6. Conclusion   22
Netographie
•   https://larlet.fr/david/biologeek/archives/20080409-google-app-
•   https://code.google.com/apis/console/?pli=1#project:92331301
•
    http://www.tutos-android.com/webservice-rest-android-appeng
•   http://www.youtube.com/watch?v=M7SxNNC429U




                                                    Google App Engine   23
Merci de votre attention




                           24

Contenu connexe

Similaire à AppEngine

Tk03 Google App Engine Fr
Tk03 Google App Engine FrTk03 Google App Engine Fr
Tk03 Google App Engine FrValtech
 
Session en ligne: Découverte du Logical Data Fabric & Data Virtualization
Session en ligne: Découverte du Logical Data Fabric & Data VirtualizationSession en ligne: Découverte du Logical Data Fabric & Data Virtualization
Session en ligne: Découverte du Logical Data Fabric & Data VirtualizationDenodo
 
Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Gerard Konan
 
Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...
Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...
Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...Modern Data Stack France
 
Ce que vous devriez savoir sur le cloud computing (OWASP Quebec)
Ce que vous devriez savoir sur le cloud computing (OWASP Quebec)Ce que vous devriez savoir sur le cloud computing (OWASP Quebec)
Ce que vous devriez savoir sur le cloud computing (OWASP Quebec)Patrick Leclerc
 
Devoxx: Tribulation d'un développeur sur le Cloud
Devoxx: Tribulation d'un développeur sur le CloudDevoxx: Tribulation d'un développeur sur le Cloud
Devoxx: Tribulation d'un développeur sur le CloudTugdual Grall
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)Restlet
 
Web 2.0 generalités, enjeux, et technologies
Web 2.0 generalités, enjeux, et technologiesWeb 2.0 generalités, enjeux, et technologies
Web 2.0 generalités, enjeux, et technologiesFoued Benoumhani
 
#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter
#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter
#J2Code2018 - Mettez du feu à vos applications avec CodeIgniterAtsé François-Xavier KOBON
 
Discovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data VirtualizationDiscovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data VirtualizationDenodo
 
Cloud computing cours in power point chap
Cloud computing cours in power point chapCloud computing cours in power point chap
Cloud computing cours in power point chapaichafarahsouelmi
 
Construire un data lake managé - GDG Paris - Juin 2019
Construire un data lake managé - GDG Paris - Juin 2019Construire un data lake managé - GDG Paris - Juin 2019
Construire un data lake managé - GDG Paris - Juin 2019Jean-Baptiste Claramonte
 
Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1Microsoft
 
Morning with MongoDB Paris 2012 - Fast Connect
Morning with MongoDB Paris 2012 - Fast ConnectMorning with MongoDB Paris 2012 - Fast Connect
Morning with MongoDB Paris 2012 - Fast ConnectMongoDB
 

Similaire à AppEngine (20)

Tk03 Google App Engine Fr
Tk03 Google App Engine FrTk03 Google App Engine Fr
Tk03 Google App Engine Fr
 
Google appengine&guice
Google appengine&guiceGoogle appengine&guice
Google appengine&guice
 
Session en ligne: Découverte du Logical Data Fabric & Data Virtualization
Session en ligne: Découverte du Logical Data Fabric & Data VirtualizationSession en ligne: Découverte du Logical Data Fabric & Data Virtualization
Session en ligne: Découverte du Logical Data Fabric & Data Virtualization
 
Google App Engine - INTRO
Google App Engine - INTROGoogle App Engine - INTRO
Google App Engine - INTRO
 
Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017
 
Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...
Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...
Hug france - Administration Hadoop et retour d’expérience BI avec Impala, lim...
 
Cloud migration
Cloud migrationCloud migration
Cloud migration
 
Ce que vous devriez savoir sur le cloud computing (OWASP Quebec)
Ce que vous devriez savoir sur le cloud computing (OWASP Quebec)Ce que vous devriez savoir sur le cloud computing (OWASP Quebec)
Ce que vous devriez savoir sur le cloud computing (OWASP Quebec)
 
Devoxx: Tribulation d'un développeur sur le Cloud
Devoxx: Tribulation d'un développeur sur le CloudDevoxx: Tribulation d'un développeur sur le Cloud
Devoxx: Tribulation d'un développeur sur le Cloud
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)
 
Web 2.0 generalités, enjeux, et technologies
Web 2.0 generalités, enjeux, et technologiesWeb 2.0 generalités, enjeux, et technologies
Web 2.0 generalités, enjeux, et technologies
 
#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter
#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter
#J2Code2018 - Mettez du feu à vos applications avec CodeIgniter
 
Discovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data VirtualizationDiscovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data Virtualization
 
Cloud computing cours in power point chap
Cloud computing cours in power point chapCloud computing cours in power point chap
Cloud computing cours in power point chap
 
Construire un data lake managé - GDG Paris - Juin 2019
Construire un data lake managé - GDG Paris - Juin 2019Construire un data lake managé - GDG Paris - Juin 2019
Construire un data lake managé - GDG Paris - Juin 2019
 
Cloud Computing Démystifié
Cloud Computing DémystifiéCloud Computing Démystifié
Cloud Computing Démystifié
 
Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1
 
OWASP Quebec ce que vous devriez savoir sur le Cloud Computing
OWASP Quebec ce que vous devriez savoir sur le Cloud ComputingOWASP Quebec ce que vous devriez savoir sur le Cloud Computing
OWASP Quebec ce que vous devriez savoir sur le Cloud Computing
 
Morning with MongoDB Paris 2012 - Fast Connect
Morning with MongoDB Paris 2012 - Fast ConnectMorning with MongoDB Paris 2012 - Fast Connect
Morning with MongoDB Paris 2012 - Fast Connect
 
Azure for Dev
Azure for DevAzure for Dev
Azure for Dev
 

Plus de leilameherzi (11)

Dropbox Amine Amimi
Dropbox Amine AmimiDropbox Amine Amimi
Dropbox Amine Amimi
 
Latex
LatexLatex
Latex
 
Arc Gis
Arc GisArc Gis
Arc Gis
 
B2 g
B2 gB2 g
B2 g
 
Plateforme BI
Plateforme BIPlateforme BI
Plateforme BI
 
OpenLayers
OpenLayersOpenLayers
OpenLayers
 
google wallet
google walletgoogle wallet
google wallet
 
Titanium
Titanium Titanium
Titanium
 
Cloud Computing
Cloud Computing Cloud Computing
Cloud Computing
 
Core audio
Core audioCore audio
Core audio
 
Réalité augmentée
Réalité augmentée Réalité augmentée
Réalité augmentée
 

AppEngine

  • 1. Google App Engine  Sameh Mtibaa Ben Mzoughia
  • 2. Sommaire • Introduction • Stockage des données • Sécurité & confidentialité • Tarification • Administration • Conclusion 2
  • 3. Sommaire • • Introduction • • Stockage des données • • Sécurité & confidentialité • • Tarification • • Administration • • Conclusion 3
  • 4. Définition Le cloud computing est un concept majeur faisant référence à l'utilisation de la mémoire et des capacités de calcul des ordinateurs et des serveurs répartis dans le monde entier et liés par un réseau. «Google App Engine est une plateforme de conception et d’hébergement d' applications web basée sur les serveurs de Google. 1. Introduction 4
  • 5. Présentation technique Déploiement d’applications web sur l’infrastructure Google Support Python, Java 6 Nombreux services techniques 1. Introduction 5
  • 6. Limitations  Pas de Thread  Pas d’accès aux fichiers  Timeout de 30 s  Supporte un sous-ensemble des classes Java  Quotas d’utilisations 1. Introduction 6
  • 7. Services supplémentaires  MemCache : Un Cache en mémoire au-dessus de la base de donnée  URL Fetch : permet de faire des requêtes HTTP/HTTPS sur un autre serveur.  Email : permet d’envoyer et de recevoir des emails.  Google Accounts : permet d’utiliser les comptes Google pour des identifications au sein d’une application.  XMPP : Protocole messagerie instantanée, Permet d’envoyer et recevoir des messages au format XMPP (utilisé dans Google Talk)  Image Manipulation: permet de manipuler des images (rotation..)  CRON: Il est possible de planifier des tâches à exécuter de manière récurrente pour, par exemple, envoyer une newsletter chaque mois.  TaskQueue : permet de mettre des tâches de fond en file d’attente. 1. Introduction 7
  • 8. Librairies et API • Support d’un sous-ensemble du JDK • Support de quelques API (JSP, JPA, …) • Nombre de librairies ne fonctionnent pas • (Hibernate, Apache POI, …) Google Web Toolkit • Sortie simultanée GWT 1.6 et GAE/J • Alternatives : Flex, JSF, Silverlight, … • Difficulté d’intégration avec DataStore 1. Introduction 8
  • 10. Exemple de code java Exemple de code pour une servlet helloworld : package helloworld; import java.io.IOException; import javax.servlet.http.*; public class HelloServlet extends HttpServlet { public void doGet(HttpServletRequest (HttpServletResponse resp) throws IOException { resp.setContentType("text/plain"); resp.getWriter().println("Hello "); }} 1. Introduction 10
  • 11. Sommaire • • Introduction • • Stockage des données • • Sécurité & confidentialité • • Tarification • • Administration • • Conclusion 2. Stockage des données 11
  • 12.  base de données  orientée colonnes 2. Stockage des données 12
  • 13. Sommaire • • Introduction • • Stockage des données • • Sécurité & confidentialité • • Tarification • • Administration • • Conclusion 3. Sécurité & confidentialité 13
  • 14. • Sécurité & confidentialité Identification 3. Sécurité & confidentialité 14
  • 15. Confidentialité Vos données sont stockées chez Google Votre code est Google est stocké chez une société Google de droit américain 3. Sécurité & confidentialité 15
  • 16. Sommaire • • Introduction • • Stockage des données • • Sécurité & confidentialité • • Tarification • • Administration • • Conclusion 4. Tarification 16
  • 17. Tarification 4. Tarification 17
  • 18. Sommaire • • Introduction • • Stockage des données • • Sécurité & confidentialité • • Tarification • • Administration • • Conclusion 5. Administration 18
  • 19. 5. Administration 19
  • 20. Console d’administration • DashBoard : Graphique et états sur l’utilisations des ressources • Logs: Equivaut un peu à system.out ce sont les logs de votre application • Datastore Viewer : Pour voir le contenu de votre base de données • Application Settings : Paramétrage de votre application • Permissions : Pour gérer les permissions sur votre application • Version : Pour gérer les différentes versions de votre application. 5. Administration 20
  • 21. Sommaire • • Introduction • • Stockage des données • • Sécurité & confidentialité • • Tarification • • Administration • • Conclusion 6. Conclusion 21
  • 22. Conclusion • Des limites opérationnelles • Pas de serveur de secours • Pas de backup des données (en cours…) • Le langage PHP n'est pas directement supporté. Mais on peut cependant l'utiliser par le biais de Quercus, qui porte PHP sur Java. • Les Webservices REST sous Android avec App Engine, Restlet et Objectify • https://appengine.google.com/ • https://developers.google.com/appengine/?hl=fr 6. Conclusion 22
  • 23. Netographie • https://larlet.fr/david/biologeek/archives/20080409-google-app- • https://code.google.com/apis/console/?pli=1#project:92331301 • http://www.tutos-android.com/webservice-rest-android-appeng • http://www.youtube.com/watch?v=M7SxNNC429U Google App Engine 23
  • 24. Merci de votre attention 24

Notes de l'éditeur

  1. Les applications ne peuvent pas lancer de Threads, La création de sockets n’est pas autorisée Les écritures de fichiers ne sont pas autorisées, Les processus tournant depuis plus de 30 secondes sont arrêtés,
  2. ,  BigTable , est un  système de gestion de base de données   compressées , développé en interne par Google.  Le langage de requêtes associé à BigTable est GQL (Google Query Langage).