Você está na página 1de 28

Google AppEngine

Rafael Nunes

Cloud Computing - SaaS - IaaS - PaaS - Google App Engine

Cases

Alguns cases interessantes no GAE

Por onde comeo?

Registro, ambiente de execuo e desenvolvimento

Registro
Uma conta google Um celular Conhecimento em Python ou Java Quotas

QUOTAS

Request = 42.300.000 (7.400/minuto) Banda de sada = 1GB (56Mb/minuto) Banda de entrada = 1GB (56Mb/minuto) CPU = 6.5CPU-hrs (15minuto) Datastore = 1GB (total) Datastore API Call = 10.000.000 (57.000/min) Blobstore = 1GB e 140.000.000 req. Mail = 7.000 chamadas / 2.000 envios

Criando Aplicao

Appspot DNS

Ambiente de execuo

Servidor web Mecanismo de persistncia API de servios Sandbox JRE Class White List

Ambiente de execuo
O que no pode?

EJB JAX-RPC/JAX-WS JDBC JMS JNDI RMI

Ambiente de desenvolvimento

SDK e linha de comando Eclipse + Plugin (PyDev) Servidor Integrado API de servio integrado

Desenvolvimento Web

Frameworks Suportador:

Struts 1, Struts 2 JSF 1.2, JSF 2, Facelets Spring MVC GWT Apache Click Play Framework (www.yaw.com.br/open)

Persistncia
>Big Table

Persistncia
Datastore no banco de dados

Persistncia
Datastore no banco de dados Datastore no banco de dados

Persistncia
Datastore no banco de dados Datastore no banco de dados Datastore no banco de dados DatastorenobancodedadosDatastorenobancode dadosDatastorenobancodedadosDatastorenoba ncodedadosDatastorenobancodedadosDatastoren obancodedadosDatastorenobancodedadosData storenobancodedadosDatastorenobancodedado sDatastorenobancodedadosDatastorenobancod edadosDatastorenobancodedados

Datastore

Schemaless Armazenamento baseado em entidades JPA e JDO Manipulao direta e GQL Objectify Limitaes (Unowed relationships, join queries, sum, avg, max, min)

API de Servios

Memcache URL Fetch Mail XMPP Images Google Account TaskQueue/Cron Blobstore

Memcache

Cache distribudo para contedo esttico Implementa JSR102 Acesso e manipulao como um Map

XMPP

Envio e Recebimento de mensagem Qualquer cliente com suporte a XMPP(GTalk)

URL Fetch

No possvel Socket no GAE HTTP/HTTPS Request java.net.URLConnection GET/POST/PUT/DELETE FetchAsync e java.util.concurrent.Future

Mail

Envio de e-mail SMTP javax.mail Envio e Recebimento

Imagem e Blobstore

Manipulao de arquivo binrio Thumbnail Manipulao de imagens

Users

Autenticao com Google Account Segurana com Google Apps Segurana para perfil admin/user

Task Queue/Cron

Tasks executadas de forma assncrona Http Request com parmetros PERFORMANCE Cron UNIX Executa uma mesma operao a cada x tempo

Outros

Multitenancy Oauth Channel API

Mo na Massa
Exemplos

Dvidas

Obrigado

rafael@yaw.com.br twitter.com/rafanunes twitter.com/youandwe