Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

20120402 nantes gtug - app engine

1 935 vues

Publié le

Publié dans : Technologie
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

20120402 nantes gtug - app engine

  1. 1. Jerome Mouton@jlmoutonjerome.mouton@snapengage.com
  2. 2.  Un peu d’histoire, IaaS, PaaS et AppEngine Présentation de la plateforme, les API et services Bonnes pratiques Bye bye les aprioris
  3. 3.  Serveurs dans co-location ◦ Gestion du matériel ◦ Administration système ◦ Dimensionnement? Plus de cables… virtual servers Virtual private servers (VPS) ◦ Plus de matériel à gérer ◦ Administration système ◦ Dimensionnement complexe
  4. 4. Load balancer
  5. 5. Load balancer
  6. 6.  SDK Matériel Réseau Système d’exploitation Application runtime: Python, Java, Go Static file serving Services Load balancing et tolérance de panne
  7. 7.  Construit au dessus de BigTable ◦ Un sorted array plus qu’une DB relationnelle ◦ Optimisé pour des opérations de lecture High Replication Datastore ◦ Copié en temps réel vers plusieurs data centers ◦ Basculement automatique sur autre DC si latence ◦ Pas d’arrêt/read-only en cas de maintenance
  8. 8.  Exécution simple de taches Moins de contraintes de temps d’exécution Réexécution en cas d’échec Choix de push et pull-queues
  9. 9.  Cross compilation Java vers JavaScript ◦ Langage unique pour frontend et backend ◦ Optimise le JavaScript pour chaque type de navigateur RPCs vers AppEngine Dans le SDK AppEngine ◦ Compilation partielle automatique ◦ Debugging
  10. 10.  Channel API pour long polling ◦ Push de AppEngine vers le client web xmpp API ◦ Intégration avec messagerie instantanée  Très simple avec utilisateurs dans Google Talk  Appels async pour le xmpp généric  Pratique pour communication entre applications
  11. 11.  AppEngine Backends Google Cloud SQL ◦ Une DB non-scalable si vous le voulez réellement  Google Cloud Storage ◦ Service comme S3 (CDN, REST, etc.) ◦ Integration avec AppEngine File API – en preview Prediction API Full Text Search API – en preview
  12. 12.  Requêtes par ID de l’objet Chat currentChat = pm.getObjectById(Chat.class, chatKey); On HRD: cohérence éventuelle Minimiser les accès au datastore ◦ Couteux ◦ Utiliser Memcache (write est 10x, read est 5x) Concevoir pour faire peu de write
  13. 13.  Gérer les exceptions AppEngine API ◦ Datastore ◦ Memcache ◦ Xmpp ◦ Etc. Gérer les exceptions de la plateforme ◦ DeadlineExceededException – error/retry ◦ CapabilityDisabledException – maintenance
  14. 14.  Utiliser services externes quand intéressant Les services non-Google utilisés SnapEngage: ◦ SendGrid - email ◦ MaxMind - geo ◦ ReportGrid / Precog - visualisation ◦ Twilio - telephonie
  15. 15.  Support de base sur Mailing list, IRC, StackOverflow, etc. Support Premium pour $500/mois ◦ Support opérationnel et pour développeurs ◦ Du Lundi au Vendredi Google Developer Advocates
  16. 16.  Migrer vers une nouvelle infrastructure est toujours couteux Certains services spécifiques à GAE (taskqueues, xmpp, etc.) mais gain de temps lors du développement initial Ne pas utiliser les Google Accounts
  17. 17.  Prix ultra attractif pendant la période de preview Augmentation dans le second semestre 2011 Prix total cependant toujours compétitif: Cout du service – dev des services – cout personnel IT
  18. 18.  Dimensionnement automatique (scalability) sans effort Permet a votre startup de se concentrer sur ce qui est important Plateforme AppEngine est maintenant robuste
  19. 19.  Démo rapide du dashboard AppEngine Démo rapide de la API Console Petit tour dans Eclipse et le GAE plugin Questions?

×