Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
ZveřejnilRobert Beneš
1
Google App Engine webové aplikace snadno a rychle Lukáš Jelínek AIKEN s.r.o. lukas@aiken.cz - www.aiken.cz
2
Co je Google App Engine Konference COMMON ČR a COMMON SR – Hotel Sitno, Vyhne, 2011 Lukáš Jelínek: Google App Engine – webové aplikace snadno a rychle ● cloudová platforma – PaaS ● prostředí pro běh + úložiště ● jazyky Java, Python (plnohodnotně) ● jazyk Go (částečně, experimentálně) ● dynamicky se vyvíjí (viz zrušení Business) ● omezeně zdarma, placení za spotřebu zdrojů
3
Koncepce služby Konference COMMON ČR a COMMON SR – Hotel Sitno, Vyhne, 2011 Lukáš Jelínek: Google App Engine – webové aplikace snadno a rychle ● provoz pod appengine.google.com nebo na vlastní doméně ● správa, řízení a monitoring aplikací přes webové rozhraní ● Java: servlety + JSP, Python: CGI ● data store, HRS, mail, task queue, XMPP... ● lze využít Google Accounts (+ OpenID)
4
Základy vývoje pro GAE Konference COMMON ČR a COMMON SR – Hotel Sitno, Vyhne, 2011 Lukáš Jelínek: Google App Engine – webové aplikace snadno a rychle ● účet Google, ověření přes SMS ● Java 6 (5), Python 2.5 ● Java: JRE Class White List, Python: webapp... ● úložiště: HRD, Datastore, Blobstore ● přístup k datům: JDO, JPA, GQL ● SDK, vývojářský server, Eclipse plugin
5
Servletové prostředí Konference COMMON ČR a COMMON SR – Hotel Sitno, Vyhne, 2011 Lukáš Jelínek: Google App Engine – webové aplikace snadno a rychle ● balíček javax.servlet.http ● odvozování od třídy HttpServlet ● typicky předefinování doGet() nebo doPost() ● požadavek: HttpServletRequest ● odpověď: HttpServletResponse ● lze používat JSP pro snazší HTML výstup
6
Ukázka kódu Konference COMMON ČR a COMMON SR – Hotel Sitno, Vyhne, 2011 Lukáš Jelínek: Google App Engine – webové aplikace snadno a rychle import java.io.IOException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class MyServlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { resp.setContentType("text/plain"); resp.getWriter().println("Hello, world"); }
7
Vyřizování požadavků Konference COMMON ČR a COMMON SR – Hotel Sitno, Vyhne, 2011 Lukáš Jelínek: Google App Engine – webové aplikace snadno a rychle ● limit 30 sekund ● statické soubory se přímo odesílají ● web.xml – řídí předávání požadavků servletům ● uživ. účty: com.google.appengine.api.users ● backends – zpracování mimo požadavky
8
Datová úložiště Konference COMMON ČR a COMMON SR – Hotel Sitno, Vyhne, 2011 Lukáš Jelínek: Google App Engine – webové aplikace snadno a rychle ● High Replication Datastore – kvalita, výkon ● Datastore (Master/Slave) – více místa ● Blobstore – dočasné, objekty do 2 GB ● typy: primitivní, bloby, GeoPt, PhoneNumber... ● lze používat JPA a JDO ● podpora transakcí
9
Doplňkové komponenty Konference COMMON ČR a COMMON SR – Hotel Sitno, Vyhne, 2011 Lukáš Jelínek: Google App Engine – webové aplikace snadno a rychle ● Memcache – distribuovaná paměťová cache, lze využívat JCache (JSR 107) ● Images – manipulace s obrázky ● Mail – odesílání a příjem pošty ● Task Queues – pracovní fronty push, pull ● XMPP – zprávy, stavy, pozvánky... ● Channel – perzistentní komunikační kanál
10
Externí propojování Konference COMMON ČR a COMMON SR – Hotel Sitno, Vyhne, 2011 Lukáš Jelínek: Google App Engine – webové aplikace snadno a rychle ● URL Fetch – přístup k externím URL ● Remote API – vzdálený přístup ke GAE ● REST API – přístup k úlohám ve frontách ● specializované servlety
11
Limity, účtování Konference COMMON ČR a COMMON SR – Hotel Sitno, Vyhne, 2011 Lukáš Jelínek: Google App Engine – webové aplikace snadno a rychle ● omezení/účtování: čas CPU, data in/out, uložená data, Always On, backends... ● denní a minutové limity ● limity: zdarma vs. placená verze ● vyčerpání = chyba 403, výjimka ● Quota API – sledování stavu limitů ● denní rozpočet
12
GAE vs. konkurence Konference COMMON ČR a COMMON SR – Hotel Sitno, Vyhne, 2011 Lukáš Jelínek: Google App Engine – webové aplikace snadno a rychle ● GAE: PaaS, Java + Python + Go, relativní omezenost, verze zdarma, nízká cena ● Windows Azure: PaaS + IaaS,.NET + PHP + Java + Ruby, více možností, try&buy, dražší ● Amazon EC2: IaaS, „libovolný SW“, široké možnosti (AWS), try&buy, dražší ● Rackspace Cloud: PaaS + IaaS, „libovolný SW“, relativní omezenost, placené služby
13
Odkazy Konference COMMON ČR a COMMON SR – Hotel Sitno, Vyhne, 2011 Lukáš Jelínek: Google App Engine – webové aplikace snadno a rychle ● http://code.google.com/appengine/ ● http://googleappengine.blogspot.com/ ● http://zdrojak.root.cz/clanky/app-engine- staticky-web-za-deset-minut-i-s-hostingem-u- google-zdarma/ ● http://www.allbuttonspressed.com/ projects/django-nonrel
14
Děkuji za pozornost. Dotazy? Konference COMMON ČR a COMMON SR – Hotel Sitno, Vyhne, 2011 Lukáš Jelínek: Google App Engine – webové aplikace snadno a rychle
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.