Aplikacje na platformie Google App Engine

Jeśli chcesz tworzyć aplikacje WWW, które będą bez problemów skalować się od kilku użytkowników do milionów użytkowników, Google App Engine jest dla ciebie.

Google App Engine (GAE) jest platformą w której nie istnieje coś takiego jak konfiguracja serwerów. Programista tworzy tylko aplikację, a platforma sam automatycznie konfiguruje i zarządza życiem serwerów w liczbie potrzebnej do obsłużenia aktualnego ruchu — nie ważne czy dla aktualnego ruchu potrzebnych jest 0 czy 1000 serwerów, programista czy administrator nie musi kiwnąć placem.

Szkolenie przeznaczone jest dla osób, które znają podstawy w języku Python i chciałby tworzyć aplikacje WWW oparte o skalowalną infrastrukturę Google App Engine.

Czas trwania: 4 dni

Cele szkolenia

Uczestnicy zdobędą praktyczną wiedzę potrzebną do tworzenie aplikacji WWW oparte o platformę GAE, obiektową bazę danych High Replication Datastore oraz cache oparty o Memcache.

Uczestnicy poznają zasady przygotowania aplikacji dla GAE tak by działała szybko i nie sprawiała problemów podczas skalowania.

Program szkolenia

  1. Omówienie czym jest Google App Engine i zapoznanie się po krótce z jego elementami
    • Konsola administracyjna
    • High Replication Datastore i indexy
    • Blobstore
    • Background Tasks
    • Backends
    • Wyszukiwanie pełnotekstowe
    • Zadania zaplanowane (cron)
    • Wersje i instancje serwerów
    • Quoty i Billing
  2. Google App Engine SDK oraz środowisko do uruchamiania i testowania aplikacji lokalnie.
    • App.yaml i konfiguracja aplikacji
    • Omówienie lokalnej konsoli administracyjnej
  3. Aplikacja WSGI
    • Start aplikacji i operacje wykonywane podczas uruchamiania nowej instancji serwera
    • Mapowanie funkcji do adresów URL
  4. Modelowanie danych przy pomocy NDB
    • Róże rodzaje modeli statyczne i dynamiczne Expando
    • Właściwości obiektów
  5. Zapis i odczyt danych z Datastore
    • Klucze i Query
    • Filtrowanie i indeksy
    • Transakcje
    • Hooking
    • Grupowe i asynchroniczne wykonywanie operacji
    • Cache z wykorzystaniem Memcache
  6. Testowanie aplikacji
    • Testy jednostkowe
    • Testowanie
  7. Blobstore
    • Zapis plików w Blobstore
    • Generowanie plików
  8. Przetwarzanie w tle
    • Kolejki i zadania
    • Deferred
  9. Wyszukiwanie pełnotekstowe
    • Definiowanie dokumentów
    • Definiowanie indeksów, aktualizacja dokumentów
    • Wyszukiwania tekstowe
    • Wyszukiwanie z użyciem tagów i innych właściwości dokumentów
    • Wyszukiwanie z użyciem współrzędnych GPS
  10. Wysyłanie wiadomości email
  11. MapReduce — szybka obróbka danych
  12. Multitenancy
    • Separacja danych klientów
  13. Uwierzytelnianie
    • Google Accounts
    • OpenID
    • OAuth
  14. Usługi
    • Pobieranie danych z zewnętrznych serwisów
    • Manipulacja plików graficznych
    • OAtuh
    • Wiadomości PUSH
    • Wykrywanie niedostępności usług platformy np. podczas zaplanowanych okresów serwisowych

Wymagania

Podstawowy programowania w języku Python oraz znajomość podstaw programowania aplikacji internetowych.


Licencja Creative Commons Ten utwór jest dostępny na licencji Creative Commons Uznanie autorstwa-Na tych samych warunkach 3.0

.