Google's App Engine


Tags:


Vor kurzem hat Google wieder etwas neues vorgestellt, und zwar die App Engine. Mit der App Engine hat man die Moeglichkeit eigene Webanwendungen auf der Google Infrastruktur zu betreiben. Google stellt hierfuer eine komplette Entwicklungsumgebung zur Verfuegung und bietet skalierbares Hosting.



Aktuell kann die App Engine nur mit Python (2.5) benutzt werden. Es aber wohl absehbar, dass dies fuer andere Sprachen erweitert wird. Da es sich noch um ein Preview handelt ist die Benutzung noch auf 10000 Entwickler beschraenkt, wahrscheinlich gibt es schon eine ziemlich lange Warteliste...

Wenn man zu den wenigen gehoert, die einen Account haben, dann erwarten einen folgende Features:
  • Hosting der Webanwendung
  • Persistent storage (Mit BigTable und GFS)
  • Automatische Skalierung und Loadbalancing
  • Google APIs
  • Komplette Entwicklungsumgebung
Waehrend der Testphase sind aber die Resourcen etwas beschraenkt (je nachdem wie man es sieht):
  • 500MB Speicherplatz
  • ausreichend CPU (200 Millionen Megacycles pro Tag)
  • 10GB Bandbreite am Tag
Das ist eigentlich schon mal gar nicht wenig. Auf jeden Fall war die Veroeffentlichung von App Engine ein guter Tag fuer die Python Community und Django. Python ist leider noch nicht so weit verbreitet wie z.B. Perl und PHP, obwohl es die Sprache schon ziemlich lange gibt. Fuer Django duerfte es auch recht erfreulich sein, dass Google Teile von Django verwendet. Vielleicht wird dadurch Django ja so bekannt wie Ruby on Rails.

Von Django wurde z.B. das Template System verwendet, welches ich fuer eines der besten halte. Wenn ich in Richtung TurboGears schaue, wo fuer die Templates KID verwendet wird, dann bekomm ich das Grauen...

Auch das Datastorage von App Engine ist aehnlich zu Django's data modelling API. Die Models werden z.B. wie folgt erstellt: Der grosse Unterscheid ist einfach, dass bei App Engine keine gewoehnliche SQL Datenbank wie PostgreSQL dahinter ist. Deswegen kann auch nicht SQL zur Abfrage verwendet werden, stattdessen gibt es GQL, welches eine aehnlich Syntax hat. Eine Abfrage kann z.B. mit formuliert werden. Wenn man nun aber schon Objektorientiert Daten speichern kann, warum kann man diese dann nicht auf dem gleichen Weg wieder Abfragen? Die meisten anderen Frameworks koennen es ja auch...


11. April, 2008

Kommentar hinzufügen