![Page 1: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/1.jpg)
Google Cloud Endpoints and Plateform@DidierGirard
![Page 2: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/2.jpg)
Barcamp
Le 28 Mars 2009 de 10h00 à 17h30 à La Cantine
![Page 3: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/3.jpg)
Nous l'avons fait !
![Page 4: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/4.jpg)
Software Development Experts
![Page 5: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/5.jpg)
www.abonentendeur.com
![Page 6: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/6.jpg)
La Team
Didier GirardDéveloppeur/Designer
![Page 7: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/7.jpg)
Un développeur Back End fait du Front End
![Page 8: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/8.jpg)
La TeamBenoit SparzaDesigner
Didier GirardDéveloppeur
![Page 9: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/9.jpg)
Un développeur Back End fait du Front Endavec un infographiste
![Page 10: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/10.jpg)
La TeamBenoit SparzaDesigner
Guillaume Le RoyDéveloppeur Android
Didier GirardDéveloppeur AppEngine
![Page 11: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/11.jpg)
Lancement le 28 mars 2013 de ABEmoto 1.1.0 (GA)
Bonus
![Page 12: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/12.jpg)
La TeamBenoit SparzaDesigner
Guillaume Le RoyDéveloppeur Android
Didier GirardDéveloppeur AppEngine
A TrouverCommunity Manager
![Page 13: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/13.jpg)
Plan
● REST● Cloud EndPoints● Cloud Plateform
![Page 14: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/14.jpg)
REST
![Page 15: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/15.jpg)
REST : Roy Fielding
PhD
Roy
2000
NetworkSoftwareArchitecture
![Page 16: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/16.jpg)
Qui utilisent REST ?
![Page 17: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/17.jpg)
REST : communication entre ordinateurs
![Page 18: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/18.jpg)
REST : Architecture de votre application
![Page 19: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/19.jpg)
REST : Tout est une ressource accessible via une URI
![Page 20: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/20.jpg)
Deux types d'URL
● Une URL pour les collections○ /users
● Une URL pour les éléments○ /users/2314R5
![Page 21: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/21.jpg)
REST : Sans Etat
![Page 22: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/22.jpg)
REST != Statefull
![Page 23: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/23.jpg)
REST : 4 Actions Standards
POST
DELETEPUT
GET
![Page 24: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/24.jpg)
REST : 4 Actions Standards
CREATE
DELETEUPDATE
READ
![Page 25: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/25.jpg)
REST : 4 Actions Standards
Ressource POSTcreate
GETread
PUTupdate
DELETEdelete
/usersCrée un nouvel
utilisateur Liste les
utilisateursMAJ de masse
Supprime en masse
/users/2314R5 Erreur ! Récupère un user
Updateou Erreur !
Delete un user
![Page 26: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/26.jpg)
Codes Retours : de 200 à 404
![Page 27: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/27.jpg)
Versioning
/v1/users
![Page 28: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/28.jpg)
Authentification
![Page 29: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/29.jpg)
Représentation des ressources
html, json, xml,...
![Page 30: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/30.jpg)
Cloud Endpoints
Objectifs de Endpoints
![Page 31: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/31.jpg)
Objectif
Construire une application multi-clients
![Page 32: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/32.jpg)
Objectif
qui monte en charge
![Page 33: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/33.jpg)
Objectif
en s'appuyant sur la plateforme Cloud de Google
![Page 34: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/34.jpg)
Architecture
![Page 35: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/35.jpg)
Cloud Endpoints ?
● REST-based APIs● AppEngine backend
○ Python et JAVA ● Client-libraries for many Platforms
○ Android, iOS, JS○ Python, Dart, PHP, ...
● Même infrastructure que les "nouvelles" APIs Google○ Google+, Drive, YouTube v3, ...
● En progression permanente
![Page 36: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/36.jpg)
Demo
● GET, POST, PUT● OAuth2● Client Android
![Page 37: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/37.jpg)
Quick Start avec leCloud Google
Didier Girard Alexis MPSfeir Google
@DidierGirard @alexismp
![Page 38: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/38.jpg)
Vous devez développer QuizzMyZik
QuizzMyZik est un jeu pour téléphone mobile où les joueurs doivent trouver le plus rapidement possible
le titre et l'artiste d'un morceau.
?
![Page 39: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/39.jpg)
Les défis techniques
● Etre multicanal● Etre sécurisé● Proposer du stockage massif● Proposer du data analyse● Encaisser des pics de charge cycliques● Générer des diplômes au format pdf et les
envoyer par email
![Page 40: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/40.jpg)
Architecture cible
APIBusiness
Search Server
NoSQLData Mining
High Capacity Storage
Mobile
Tablette
Machine
Browser
Authentification
Serveur Impression
Serveur SMTP
BI
![Page 41: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/41.jpg)
Architecture cible
APISpark
Serveur d'applications
ElasticSearch
Hadoop/HbaseMahout
High Capacity Storage ?
Mobile
Tablette
Machine
Browser
OAuth
Serveur Impression ?
Serveur SMTP ?
Base OLAP
![Page 42: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/42.jpg)
Architecture cible
Cloud EndPoints
AppEngineSearch API
DataStorePrediction
Cloud Storage
Mobile
Tablette
Machine
Browser
Google Accounts Authentication and
Authorization
Print via Compute Engine Mail API
BigQuery
Google Cloud Platform
![Page 43: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/43.jpg)
Exemple de débit
Cloud EndPoints
AppEngineSearch API
DataStorePrediction
Cloud Storage
Mobile
Tablette
Machine
Browser
Google Accounts Authentication and
Authorization
Print via Compute Engine Mail API
BigQuery
Google Cloud Platform
30Mo
![Page 44: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/44.jpg)
La plateforme Google
![Page 45: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/45.jpg)
![Page 46: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/46.jpg)
Google Cloud Platform
![Page 47: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/47.jpg)
Google Cloud Platform
Tout pour simplifier la vie du développeur
![Page 48: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/48.jpg)
App Engine
Easy to buildEasy to scale
![Page 49: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/49.jpg)
Demo
Prototypage facileMaven facileTraffic splitting
![Page 50: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/50.jpg)
Datastore, CloudSQL
Easy to persist
![Page 51: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/51.jpg)
Search API
Easy to search
Add Google-like full-text search to your application● Custom scoring and snippeting● GeoSearch
![Page 52: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/52.jpg)
Cloud Storage API
Easy to storeEasy to shareEasy to stream
From 0 to 5 TB per Object
![Page 53: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/53.jpg)
BigQuery
Easy to Query
![Page 54: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/54.jpg)
BigQuery gives you this power
Store data with reliability,redundancy and consistency
Go from data to meaning
Quickly!
At scale ...
How are developers using it?
Game and social media analytics
Advertising campaign optimization
Sensor data analysis
Infrastructure monitoring
BigQuery
![Page 55: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/55.jpg)
Prediction API
Easy to predict
![Page 56: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/56.jpg)
Prediction API - Problématique
DATA ?
![Page 57: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/57.jpg)
Prediction API - Training
DATA
ResultPhase 1 : Training
![Page 58: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/58.jpg)
Prediction API - Prediction
DATA ?
Phase 2 : Predict
![Page 59: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/59.jpg)
Compute Engine
Easy to Ops
![Page 60: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/60.jpg)
Google Compute APIs
● REST API (OAuth 2.0 / json)● Python/Java/... Client APIs● gcutil command line● Web Console
![Page 61: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/61.jpg)
NetworkInstance
Zones 3 US 2 Europe
Compute Engine concepts
Zones 3 US 2 Europe
NetworkNetworkInstance Disks
ephemeral, persitent
ImagecentOS, Ubuntu,
custom
MachinehighCPU, highMem,
...
Disksephemeral, persitent
FirewallsFirewalls
Instance Disksephemeral, persitent
ImagecentOS, Ubuntu, custom
MachinehighCPU, highMem, ...
Disksephemeral, persitentmetadatas
![Page 62: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/62.jpg)
Compute Engine Command line gcutil
gcutil getproject --project=<project-id> --cache_flag_values
gcutil addfirewall http2 --description="Incoming http allowed." --allowed="tcp:http"
gcutil addinstance \
--machine_type=$MACHINE_TYPE \
--image=$MACHINE_IMAGE \
--zone=$ZONE \
--metadata_from_file=startup-script:$STARTUP_SCRIPT \
$INSTANCE_NAME
![Page 63: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/63.jpg)
Mail API
Easy to mail
![Page 64: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/64.jpg)
Cloud EndPoints
Easy to connect
![Page 65: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/65.jpg)
Cloud EndPoints
Console d'administration
![Page 66: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/66.jpg)
Google Accounts
Easy to AuthenticateEasy to Authorize
![Page 67: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/67.jpg)
De la fiction à la réalité
http://googleappengine.blogspot.fr/2013/02/scaling-songpop-to-60-million-users.html
1,000,000 daily active users
![Page 68: Google End points pour vos applications Android par Didier Girard 3 avril 2013](https://reader034.vdocuments.net/reader034/viewer/2022051412/54c63dd94a7959b07d8b45b6/html5/thumbnails/68.jpg)
Merci