Google App Engine Technische Stärken und Schwächen Gruppe 1 Manuel Mitasch Matthias Rosenthaler Elisabeth Rumetshofer Johann Tuder Michal Wasilewski Agenda • • • • • Entwicklung - Allgemein Java Kontingente Administration Sicherheit Entwicklung - Allgemein (1) - nur Java, Python, Google Go - keine nativen Python-Module - nur Windows Server 2008, rein quelloffene Linux-Betriebssysteme für Instanzen + Eclipse Plugin + lokale Testumgebung (Jetty Server) + Datenbanken o Cloud SQL (sehr ähnlich zu MySQL) o NoSQL Entwicklung - Allgemein (2) + keine Einstiegskosten 500 MB Speicher für 3 Applikationen o 5 Mio. Aufrufe pro Monat o 6,5 CPU-Stunden pro Tag o max. 1 GB Datenfluss pro Tag o • Basis Protokolle o o o o HTTP XML SOAP REST Entwicklung - Allgemein (3) - kein Anlegen von Threads möglich - kein Anlegen von Dateien möglich - keine Sockets öffnen + Automatische Skalierung • o wie bei z.B. BigTable, GFS (Google File System) max. 99,95 % Verfügbarkeit Java - nicht alle Java-Klassen verfügbar (White List) - keine Klassen verfügbar, die Threads verwenden - Aufruf von JNI-Code nicht möglich - nicht gesamte Java EE-Spezifikation unterstützt - Reservieren einer JVM nicht möglich + Laden benutzerdefinierter Klassen unterstützt o Klassenladeprogramme werden überschrieben Kontingente Größe der Anfrage 10 Megabytes Größe der Antwort 10 Megabytes Dauer der Anfrage 30 Sekunden Max. Gesamtzahl von Dateien 3000 Max. Größe einer Anwendungdatei 10 Megabytes Max. Größe einer statischen Datei 10 Megabytes Max. Gesamtgröße aller Anwendungdateien und statischen Dateien 150 Megabyte Administration + Web-basierte Verwaltungskonsole o Monitoring, Kontingente, Logs, CronJobs, Indizes + geringer Konfigurationsaufwand - kein Zugriff auf Plattformsystem o keine Tuningmöglichkeiten (bzgl. Server, Betriebssystem) Sicherheit + Automatische Updates der Plattform + Sandbox keine native Python-Module, Java Bibliotheken whitegelistet o keine langlebigen Prozesse (30 Sek.) o keine Threads o CronJob Intervalle > 1 min. o HTTPS nur mit *.appspot.com (+ Google Zertifikat) o - Server können weltweit verteilt sein (Rechtsproblematik)