google app engine como backend de apps mobile

45
Google App Engine GAE como backend de apps mobile

Upload: jm-robles

Post on 13-Jun-2015

574 views

Category:

Documents


1 download

DESCRIPTION

Esteban Dorado nos enseñó las ventajas e inconvenientes de usar GAE como backend para nuestras apps móviles.

TRANSCRIPT

Page 1: Google App Engine como backend de apps mobile

Google App EngineGAE como backend de apps mobile

Page 2: Google App Engine como backend de apps mobile

Dev web and web mobileGDG Granada Organizer

[email protected]

mresti

@Mr_Esti

ESTEBAN DORADO ROLDÁN

GAE como backend de apps mobile

Page 3: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Page 4: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Page 5: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

IDEA

● Project: Bares de tapeo en Granada

Page 6: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

¿Qué es GAE?

● GAE es PaaS

● GAE permite ejecutar aplicaciones web en las infraestructuras de Google

● Características:○ Las aplicaciones son fáciles de crear, de mantener

y de escalar.○ Dominio propio o un subdominio http:

//subdominio.appspot.com

Page 7: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

¿Qué es GAE?

● Lenguajes de programación:○ Python○ Java○ Go ¡¡Experimental!!○ PHP ¡¡Experimental!!

● Pago por consumo● Alta disponibilidad y alta replicación● Administración remota● SDK con entorno de desarrollo local

Page 8: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Comparaciones

● Desarrollo de webapps:

● Frameworks usados:

Page 9: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Ventajas

● Escalabilidad automática.

● Alojamiento rentable○ Para prototipos○ Para webs/plataformas○ Cuota gratuita: 500MB de DB y 5 millones de

visitas mensuales ~ Valores aprox.

Page 10: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Inconvenientes

● Portabilidad

nula

Page 11: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Inconvenientes

● Herramientas

muy limitadas

Page 12: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Inconvenientes

● Debora recursos

Page 13: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Core APIs

Page 14: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Datastore

● Base de datos NOSQL

● Datastore es muy rápido

● Datastore: ¡¡CUESTA DINERO!!

● Interfaz de consulta a través de una cadena, GQL

(Google Query Language)

● GQL no puede ejecutar JOINS en las consultas

SELECT

Page 15: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Datastore

Page 16: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Datastore

Page 17: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Datastore

Page 18: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Datastore

● Características del database:

Page 19: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Datastore

● Características del database:

Page 20: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Datastore

● Características del database:

Page 21: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Datastore

● Características del database:

Page 22: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Datastore

Entity != Entrada

● Dos entities del mismo Kind no tienen porqué tener las

mismas propiedades

● Una propiedad puede contener uno o múltiples valores

● Las Queries son para echarles de comer a parte

● Indexes!!

Page 23: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Datastore

Entity != Entrada

● Dos entities del mismo Kind no tienen porqué tener las

mismas propiedades

● Una propiedad puede contener uno o múltiples

valores

● Las Queries son para echarles de comer a parte

● Indexes!!

Page 24: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Datastore

Entity != Entrada

● Dos entities del mismo Kind no tienen porqué tener las

mismas propiedades

● Una propiedad puede contener uno o múltiples valores

● Las Queries son para echarles de comer a parte

● Indexes!!

Page 25: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Añadir, recuperar, modificar y eliminar

Page 26: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Relacionar dos entidades

Page 27: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Objectify

● Permite modelar las Entities como clases (a lo ORM)

● Menos verbosa que al API de bajo nivel del Datastore

● Realiza optimizaciones por nosotros (p.e. cachea

resultados)

Page 28: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Objetify: declarar una entidad

Page 29: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Objectify: añadir, recuperar, modificar, eliminar

Page 30: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

¡¡REMEMBER!!

Page 31: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Instancias

Page 32: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

En GAE..

● Ejecutar una instancia

cuesta dinero

● El datastore cuesta

dinero

● Hacer las cosas mal

puede costar mucho

dinero

Page 33: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

{ GDG -> Dev Gift }

https://cloud.google.com/resources/starterpack/

Page 34: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Bibliografía

Page 36: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Page 37: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

IDEA

● Project: Bares de tapeo en Granada

Page 38: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Project tips

● Datastore:○ Bares○ Comentarios

● Tecnologías:○ Mobile: Android○ Backend: GAE

Page 39: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Tecnologías

Page 40: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Page 41: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Magia

Page 42: Google App Engine como backend de apps mobile

GAE como backend de apps mobile

Magia

Page 43: Google App Engine como backend de apps mobile

Demo time!

GAE como backend de apps mobile

Page 44: Google App Engine como backend de apps mobile

¿Preguntas?

GAE como backend de apps mobile

Page 45: Google App Engine como backend de apps mobile

Thank you!

GAE como backend de apps mobile