Google End points pour vos applications Android par Didier Girard 3 avril 2013

2,267 views

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,267
On SlideShare
0
From Embeds
0
Number of Embeds
295
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Google End points pour vos applications Android par Didier Girard 3 avril 2013

  1. 1. Google Cloud Endpointsand Plateform@DidierGirard
  2. 2. Barcamp Le 28 Mars 2009 de 10h00 à 17h30 à La Cantine
  3. 3. Nous lavons fait !
  4. 4. Software Development Experts
  5. 5. www.abonentendeur.com
  6. 6. La Team Didier Girard Développeur/Designer
  7. 7. Un développeur Back End fait du Front End
  8. 8. La Team Benoit Sparza Designer Didier Girard Développeur
  9. 9. Un développeur Back End fait du Front End avec un infographiste
  10. 10. La Team Benoit Sparza Designer Guillaume Le Roy Développeur Android Didier Girard Développeur AppEngine
  11. 11. BonusLancement le 28 mars 2013 de ABEmoto 1.1.0 (GA)
  12. 12. La Team Benoit Sparza Designer Guillaume Le Roy Développeur Android Didier Girard Développeur AppEngine A Trouver Community Manager
  13. 13. Plan ● REST ● Cloud EndPoints ● Cloud Plateform
  14. 14. REST
  15. 15. REST : Roy Fielding Network Software Architecture PhD Roy 2000
  16. 16. Qui utilisent REST ?
  17. 17. REST : communication entre ordinateurs
  18. 18. REST : Architecture de votre application
  19. 19. REST : Tout est une ressource accessible via une URI
  20. 20. Deux types dURL ● Une URL pour les collections ○ /users ● Une URL pour les éléments ○ /users/2314R5
  21. 21. REST : Sans Etat
  22. 22. REST != Statefull
  23. 23. REST : 4 Actions Standards POST GET PUT DELETE
  24. 24. REST : 4 Actions Standards CREATE READ UPDATE DELETE
  25. 25. REST : 4 Actions Standards POST GET PUT DELETE Ressource create read update delete Crée un Liste les MAJ de Supprime /users nouvel utilisateurs masse en masse utilisateur Récupère Update Delete un /users/2314R5 Erreur ! un user ou Erreur ! user
  26. 26. Codes Retours : de 200 à 404
  27. 27. Versioning /v1/users
  28. 28. Authentification
  29. 29. Représentation des ressources html, json, xml,...
  30. 30. Cloud Endpoints Objectifs de Endpoints
  31. 31. Objectif Construire une application multi-clients
  32. 32. Objectif qui monte en charge
  33. 33. Objectif en sappuyant sur la plateforme Cloud de Google
  34. 34. Architecture
  35. 35. 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
  36. 36. Demo ● GET, POST, PUT ● OAuth2 ● Client Android
  37. 37. Quick Start avec le Cloud Google Didier Girard Alexis MP Sfeir Google@DidierGirard @alexismp
  38. 38. Vous devez développer QuizzMyZikQuizzMyZik est un jeu pour téléphone mobile où les joueurs doivent trouver le plus rapidement possible le titre et lartiste dun morceau. ?
  39. 39. 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
  40. 40. Architecture cible Authentifi cation Data NoSQL Mining Mobile Search Server Tablette Business API Machine High Capacity Storage Browser BI Serveur Serveur SMTP Impression
  41. 41. Architecture cible OAuth Mahout Hadoop/Hbase Mobile ElasticSearch Serveur Tablette dapplications APISpark Machine High Capacity Storage ? Browser Base OLAP Serveur Serveur SMTP ? Impression ?
  42. 42. Architecture cible Google Accounts Authentication and DataStore Authorization Prediction Mobile Search API Tablette AppEngine Cloud EndPoints Machine Cloud Storage Browser Print via BigQuery Compute Mail API Engine Google Cloud Platform
  43. 43. Exemple de débit Google Accounts Authentication and DataStore Authorization Prediction Mobile Search API Tablette AppEngine Cloud EndPoints Machine Cloud Storage 30Mo Browser Print via BigQuery Compute Mail API Engine Google Cloud Platform
  44. 44. La plateforme Google
  45. 45. Google Cloud Platform
  46. 46. Google Cloud Platform Tout pour simplifier la vie du développeur
  47. 47. App Engine Easy to build Easy to scale
  48. 48. Demo Prototypage facile Maven facile Traffic splitting
  49. 49. Datastore, CloudSQL Easy to persist
  50. 50. Search API Easy to search Add Google-like full-text search to your application ● Custom scoring and snippeting ● GeoSearch
  51. 51. Cloud Storage API Easy to store Easy to share Easy to stream From 0 to 5 TB per Object
  52. 52. BigQuery Easy to Query
  53. 53. BigQuery BigQuery gives you this power How are developers using it? Store data with reliability, Game and social media redundancy and consistency analytics Go from data to meaning Infrastructure monitoring At scale ... Advertising campaign optimization Quickly! Sensor data analysis
  54. 54. Prediction API Easy to predict
  55. 55. Prediction API - Problématique DATA ?
  56. 56. Prediction API - Training DATA Phase 1 : Training Result
  57. 57. Prediction API - Prediction DATA ? Phase 2 : Predict
  58. 58. Compute Engine Easy to Ops
  59. 59. Google Compute APIs● REST API (OAuth 2.0 / json)● Python/Java/... Client APIs● gcutil command line● Web Console
  60. 60. Compute Engine concepts Zones 33US 22Europe Zones US Europe Firewalls Network Network Firewalls Instance Instance Disks Disks Disks ephemeral, persitent metadatas ephemeral, persitent ephemeral, persitent Machine Machine Image Image highCPU, highMem, ... highCPU, highMem, centOS, Ubuntu, custom centOS, Ubuntu, ... custom
  61. 61. Compute Engine Command line gcutilgcutil getproject --project=<project-id> --cache_flag_valuesgcutil 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
  62. 62. Mail API Easy to mail
  63. 63. Cloud EndPoints Easy to connect
  64. 64. Cloud EndPoints Console dadministration
  65. 65. Google Accounts Easy to Authenticate Easy to Authorize
  66. 66. De la fiction à la réalité 1,000,000 daily active users
  67. 67. Merci

×