Google App Engine

Le “Cloud Computing” gagne chaque jour en popularité. Il est maintenant possible pour une jeune entreprise de développer un site web qui accueil des millions d’usagers et ce à très faible coûts. Google est un leader dans ce domaine avec Amazon et quelques autres compagnies.

Google App Engine (GAE) permet à un développeur de construire une application web dans le cloud de Google et ainsi bénificier d’une capacité de croissance illimitée.  Pour y arriver, GAE mets à la disposition des programmeurs une suite d’outils de base qui permettent, si ils sont bien utilisés, de profiter pleinement des possibilitées de croissances du cloud.

Google App Engine est disponible pour Python et, depuis quelques semaines, en Java. Originalement, GAE était disponible seulement pour Python, je recommande donc d’utiliser ce langage plutôt que Java. La communauté Open Source/Python est beaucoup plus dynamique que la très “corporative” communauté Java.

Assez de mise en contexte, venons en aux faits. L’approche proposée par GAE est différente de l’approche traditionnelle du cloud computing où on offre généralement à l’usager la possibilité d’ajouter un nombre illimité de machines virtuelles pour supporter leurs besoins de croissance. GAE va plus loin en proposant de nouveaux outils de programmation qui sont conçus pour profiter pleinement du cloud de Google. Ces outils sont:

  • Le DataStore qui remplace les bases de données relationnelles traditionnellement utilisées dans les grands sites
  • Le Memory Cache qui permet de garder des données en mémoire  et de les rendre disponible à toute l’application
  • Le Mail Service qui vous permet d’envoyer des courriels aux usagers.
  • Le URL Fetch qui permet d’accéder au contenu de sites externes en GET ou en POST.
  • Le Image Service sert à manipuler et modifier des images.
  • Le Google Account qui vous permet d’utiliser les comptes Google pour vos usagers.

J’ai commencé à travailler avec GAE au début du mois d’avril. J’ai principalement utilisé le DataStore, Le MemoryCache et le Mail Service. Ces outils sont très simples d’utilisation et, si bien utilisés, vous permettent de développer une application qui pourra croitre sans limite.

Je vous recommande ce petit vidéo pour avoir une idée du cycle de développement d’une application avec GAE:
http://www.youtube.com/watch?v=bfgO-LXGpTM

J’ai aussi développé une petite application web qui permet de faire la gestion d’usagers sans utiliser le Google User Account service. Cette application utilise Django comme web framework. Vous pouvez télécharger le code sur mon Github à l’adresse suivante:
http://github.com/pchretien/gaebase/tree

Vos commentaires sont les bienvenus,

Philippe Chrétien

Tags: , , ,

Post a Reply

Your email address will not be published. Required fields are marked *

Top