aws summit bogotá track avanzado: sin servidores: mobile backend como servicio en aws
TRANSCRIPT
Bogotá
Sin Servidores: Mobile Backend-
as-a-Service en AWS
Henry Alvarado
Arquitecto de Soluciones
Amazon Web Services
AWS Stack de servicios
Infrastructure RegionsPoints
of PresenceAvailability Zones
Core ServicesStorage(Object, Block
and Archival)
Compute(VMs, Auto-scaling
and Load Balancing)
Databases(Relational, NoSQL, Caching)
Networking(VPC, DX, DNS)
CDN
Access ControlUsage
Auditing
Monitoring and
Logs
Administration
& SecurityKey Storage
Identity
Management
Platform
Services
Deployment & Management
One-click web app
deployment
Dev/ops resource
management
Resource Templates Push Notifications
Mobile Services
Mobile Analytics
Identity
Sync
App Services
Workflow
Transcoding
Search
Queuing &
Notifications
App streaming
Analytics
Hadoop
Data Pipelines
Data Warehouse
Real-time
Streaming Data
Enterprise
ApplicationsVirtual Desktops Collaboration and Sharing
Mobile Backend-as-a-Service (MBaaS)
Qué es MBaaS?
• Modelo de aprovisionamiento de servicios de backend vía cloud para aplicaciones web y mobile– Notificaciones vía push, integración con redes sociales,
almacenamiento, bases de datos, búsqueda, etc.
– Agilidad y desarrollo más rápido (foco en la aplicación y no en los servicios de backend)
– Bajo costo, alta disponibilidad y escalabilidad
– Menos infraestructura para administrar (servidores, SO, web y app servers, DB, storage, redes, etc.)
Caso de Uso: Transición de estado
Perfil de usuario inicialmente
como “anónimo” o “guest”
Posterior registro de la cuenta
• La transición debería ser
simple.
Caso de Uso: Transición de estado
Caso de Uso: Transición de Estado
Múltiples cuentas pueden ser
vinculadas al mismo perfil
• El usuario debería tener un
identificado único y
estandarizado.
Caso de Uso: Estado en juegos
Arquitectura de MBaaS en AWS
Requerimientos:
• Mini-CMS Web para registro de categorías e ítems.
• Publicación (generación de versiones estáticas del contenido para múltiples plataformas de visualización. – (Web browser, Android e IOS)
Ejemplo de MBaaS usando servicios de AWS
Requerimientos
• Perfil de usuario (Favoritos) en un datastore sincronizado
• Generación de Thumbnails, Búsqueda, Notificaciones, SNS y Analitics
Ejemplo de MBaaS usando servicios de AWS
Sin MBaaS, qué sería necesario?
users
Admin
AZ 1
Ngnx
users
Admin
AZ 1
Sin MBaaS, qué sería necesario?
Ngnx Apache
users
Admin
AZ 1
Sin MBaaS, qué sería necesario?
Ngnx Apache
users
Admin
AZ 1
Sin MBaaS, qué sería necesario?
ESNgnx Apache
users
Admin
AZ 1
Sin MBaaS, qué sería necesario?
ESNgnx Apache
users
Admin
AZ 1
Sin MBaaS, qué sería necesario?
ES
Ngnx
Ngnx Apache
Apache ES
users
Admin
AZ 2
AZ 1
Sin MBaaS, qué sería necesario?
ES
Ngnx
Ngnx Apache
Apache ES
users
Admin
AZ 2
AZ 1
Sin MBaaS, qué sería necesario?
ES
Ngnx
Ngnx Apache
Apache ES
users
Admin
AZ 2
AZ 1
Ngnx
Ngnx
AS group
Sin MBaaS, qué sería necesario?
ES
Ngnx
Ngnx Apache
Apache ES
users
Admin
AZ 2
AZ 1
Ngnx Apache
Ngnx Apache
AS group AS group
Sin MBaaS, qué sería necesario?
ES
Ngnx
Ngnx Apache
Apache ES
users
Admin
AZ 2
AZ 1
Ngnx Apache
Ngnx Apache
AS group AS group
ES
ES
Sin MBaaS, qué sería necesario?
ES
Ngnx
Ngnx Apache
Apache ES
users
Admin
AZ 2
AZ 1
Ngnx Apache
Ngnx Apache
AS group AS group
ES
ES
Sin MBaaS, qué sería necesario?
CM
S
EDITOR
WEB BROWSER
CM
S
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
CM
S
SDK Javascript AWS
• Acceso a los servicios de AWS directamente
desde el browser
• No requiere servidores
• Fácil de instalar
• Fácil de aprender a usar
• Soporte para todos los browser modernos
• Login en redes sociales con Cognito
• Datos persistentes con DynamoDB
• Almacenamiento de archivos con S3
SDK Mobile AWS
• Mecanismo común de autenticación entre
diversas plataformas
• Tratamiento automático de intermitencias de
red
• Soporte a múltiples plataformas: Android,
IOS, Unity y FireOS
• SDK nativos, optimizados para el SO móvil,
como el uso de arquitectura para chache
offline
• Footprint de memoria optimizado; Escoja
únicamente los jars que necesita.
Outros SDKs AWS
ROUTE 53
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
CM
S
BA
CK
EN
D (
MB
aa
S)
Route 53
• Servicio de DNS altamente disponible y escalable
• Traducción de nombre a IP con excelente costo beneficio.
• Múltiples tipos de enrutamiento
• Enrutamiento basado en latencia
• Geo DNS.
• Round Robin por Peso.
• DNS Failover con healthchecks.
• Registro de dominio (compra de dominios)
• Puede ser usado también para re direccionar usuarios para infraestructura fuera de AWS
ROUTE 53
CLOUDFRONT
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
CM
S
BA
CK
EN
D (
MB
aa
S)
CloudFront (Content Delivery Network / CDN)
• Red de entrega de contenido
• Infraestructura global (53 puntos de presencia)
• Optimizada para alta performance
• Escalabilidad masiva
• Altamente segura
• Self Service
CloudFront (Content Delivery Network / CDN)
• Archivos estáticos
• Media y entretenimiento
• Juegos
• eComerce
• Publicidad digital
• Downloads de software
• Websites dinámicos y aplicaciones
ROUTE 53
CLOUDFRONT S3
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
CM
S
BA
CK
EN
D (
MB
aa
S)
S3 (Simple Storage Service)
• Almacenamiento de objetos accesibles vía Web
• Pague exactamente e apenas pelo que usar
• Altamente durable (diseñado para 99.999999999%)
• Escalabilidad virtualmente ilimitada
• Nativamente online
S3 (Simple Storage Service)
• Objetos almacenados no S3 son URLs
• Transfiera el trabajo de servir archivos estáticos para Amazon S3
• Reducción de uso de disco físico
• Características:
• I/O paralelizado para máxima velocidad
• Permisos a nivel de recursos vía IAM
• Listas de controle e políticas de acceso
• Envío directo de las aplicaciones a S3
• Criptografía server-side
S3 Code Snippet (Javascript)
var bucket = new AWS.S3({
params : {
Bucket : 'pairarchitecture'
}
});
var fileChooser = document.getElementById('add-file-chooser');
var file = fileChooser.files[0];
Var fileName = file.name.toLowerCase();
var params = {
Key : 'images/' + fileName,
ContentType : file.type,
Body : file
};
bucket.upload(params, function(err, data) {
...
});
ROUTE 53
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
CM
S
BA
CK
EN
D (
MB
aa
S)
AUTH
Cognito (Autenticación y Data Store)
Simplifica la
administración de
acceso e identidades
Acceso seguro a
todos los servicios de
AWS
Sincronización Cross-
device y Cross-
plataforma
Implementa las mejores
prácticas de seguridad
“Datos de su aplicación seguros, disponibles offline y sincronizados entre
diferentes dispositivos”
Sincroniza datos del
usuario entre las
plataformas y
dispositivos
Administra usuarios con
identidad única entre
diferentes proveedores
Guest Sua própria
Autenticação
Cognito Code Snippet (Javascript)
var params = {
AccountId : "98XXXXXX48490",
RoleArn : "arn:aws:iam::982433XXXXXX90:role/Cognito_pairarchitecturecmsAuth_Role",
IdentityPoolId : "us-east-1:4eXXXXXX40-16df-4ad8-a55f-c0a68616e585",
Logins : {
'graph.facebook.com' : response.authResponse.accessToken
}
};
AWS.config.region = 'us-east-1';
AWS.config.credentials = new AWS.CognitoIdentityCredentials(params);
AWS.config.credentials.get(function(err) {
if (!err) {
console.log("Cognito Identity Id: ” + AWS.config.credentials.identityId);
}
});
ROUTE 53DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
CM
S
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
DynamoDB
Servicio de base de datos NoSQL e la
nube
• No relacional
• Performance previsible
• Escalabilidad sin esfuerzo
• Fácil administración
DynamoDB Code Snippet (Javascript)
var db = new AWS.DynamoDB();
var params = {
KeyConditions : {
category_name : {
ComparisonOperator : 'EQ',
AttributeValueList : [ {
S : ‘Categoria1’
} ]
}
},
TableName : 'pairarchitecture_items',
ConsistentRead : true
};
db.query(params, function(err, data) {
...
});
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
S
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
Lambda
Escalabilidad automática
Foco en la lógica del
negocio, no en la
infraestructura. Suba su
código y deje a Lambda
hacer el resto.
Ninguna administración
Lambda escala la
infraestructura a medida
que sea necesario y
usted paga solo por lo
que usa.
Traiga su própio
Código
“Ejecute funciones stateless en la nube y escale automáticamente sin tener
que administrar ningún servidor”
Lamba está comenzando con
Javascript (node.js), pero
próximamente tendremos
soporte para otros lenguajes.
Lambda
Back-end sin
servidor
Gatillos a
partir de
datos
IoT Procesamiento
de streams de
datos
Indexación y
sincronización
Lambda Code Snippet (Node.js)var aws = require('aws-sdk');
var AWS_REGION = "us-east-1";
var CLOUDSEARCH_DOC_ENDPOINT = "doc-mbaasdemo- ... cloudsearch.amazonaws.com";
var sdf1;
var params = {query: '-foobar’, size: 10000};
exports.handler = function(event, context) {
csd = new aws.CloudSearchDomain({endpoint: CLOUDSEARCH_DOC_ENDPOINT,region: AWS_REGION});
csd.search(params, function(err, data) {
data.hits.hit.forEach (function(item, index) {
sdf1.push({type: "delete", id: item.id});
});
});
csd.uploadDocuments({documents: JSON.stringify(sdf1),contentType: "application/json"}, function(err, data){
if (err) {
console.log("Error Deleting Documents: ” + err);
});
});
}
Lambda Code Snippet (Javascript)
var lambda = new AWS.Lambda();
thumb = fileName.split(".")[0] + "_thumb." + fileName.split(".")[1];
var params = {
FunctionName : 'ThumbCreator',
InvokeArgs : "{\"bucket\":\"pairarchitecture\",\"key\":\"" + "images/" + fileName + "\"}”
};
lambda.invokeAsync(params, function(err, data) {
...
});
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
CloudSearch
• Motor de búsqueda 100% administrado
• Fácil configuración y operación
• Escalable
• Confiable
• Alto Performance
• Pare de adivinar la capacidad requerida
• Funcionalidades
• Busca facetada, sugerencias,
relevancia, búsqueda geo-localizada,
soporte multi-lengua, etc.
• Costo
• Pague solo por lo que usa
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
END USER
MOBILE (IOS)
AWS MOBILE SDK
IOS
END USER
MOBILE (ANDROID)
AWS MOBILE
SDK ANDROID
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
END USER
MOBILE (IOS)
AWS MOBILE SDK
IOS
END USER
MOBILE (ANDROID)
AWS MOBILE
SDK ANDROID
ROUTE 53
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
END USER
MOBILE (IOS)
AWS MOBILE SDK
IOS
END USER
MOBILE (ANDROID)
AWS MOBILE
SDK ANDROID
ROUTE 53
CLOUDFRONT
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
END USER
MOBILE (IOS)
AWS MOBILE SDK
IOS
END USER
MOBILE (ANDROID)
AWS MOBILE
SDK ANDROID
ROUTE 53
CLOUDFRONT
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
END USER
MOBILE (IOS)
AWS MOBILE SDK
IOS
END USER
MOBILE (ANDROID)
AWS MOBILE
SDK ANDROID
ROUTE 53
CLOUDFRONT
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
END USER
MOBILE (IOS)
AWS MOBILE SDK
IOS
END USER
MOBILE (ANDROID)
AWS MOBILE
SDK ANDROID
ROUTE 53
CLOUDFRONT
COGNITO
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
END USER
MOBILE (IOS)
AWS MOBILE SDK
IOS
END USER
MOBILE (ANDROID)
AWS MOBILE
SDK ANDROID
ROUTE 53
CLOUDFRONT
COGNITO
COGNITO SYNC
STORE (FAVORITES)
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
END USER
MOBILE (IOS)
AWS MOBILE SDK
IOS
END USER
MOBILE (ANDROID)
AWS MOBILE
SDK ANDROID
ROUTE 53
CLOUDFRONT
COGNITO SYNC
STORE (FAVORITES)SNS
COGNITO PUSH SYNC
COGNITO
SNS (Simple Notification Service)
Amazon SNS
Mobile Push
Cross-
plataforma
Internet
Apple APNS
Google GCM
Amazon ADM
Windows WNS e
MPNS
Baidu CP
Con Amazon SNS, los desarrolladores pueden mandar notificaciones push a
múltiples plataformas y usuarios mobile alrededor del mundo
Celulares y Tablets Android
Celulares y Tablets Apple
Dispositivos Kindle
iOS
Dispositivos Windows Desktop e
Windows Phone
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
END USER
MOBILE (IOS)
AWS MOBILE SDK
IOS
END USER
MOBILE (ANDROID)
AWS MOBILE
SDK ANDROID
ROUTE 53
CLOUDFRONT
SNS
COGNITO PUSH SYNC
COGNITO
COGNITO SYNC
STORE (FAVORITES)
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
END USER
MOBILE (IOS)
AWS MOBILE SDK
IOS
END USER
MOBILE (ANDROID)
AWS MOBILE
SDK ANDROID
ROUTE 53
CLOUDFRONT
SNS
SE
AR
C
HIN
G
COGNITO PUSH SYNC
COGNITO
COGNITO SYNC
STORE (FAVORITES)
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
END USER
MOBILE (IOS)
AWS MOBILE SDK
IOS
END USER
MOBILE (ANDROID)
AWS MOBILE
SDK ANDROID
ROUTE 53
CLOUDFRONT
SNS
SE
AR
C
HIN
G
COGNITO PUSH SYNC
MOBILE
ANALYTICS
COGNITO
COGNITO SYNC
STORE (FAVORITES)
Mobile Analytics
Free Tier escalable
Foco en métricas que
importan. Informes de
utilización disponibles
cada 60 minutos a partir
de haber recibir los datos
Rápido
Escale hasta billones de
eventos por día a partir
de millones de usuarios
Tome posesión de
sus datos
“Fácil recolectar, visualizar e interpretar los datos de uso de su aplicación
Mobile en larga escala”
Datos recolectados no
son compartidos,
agregados o reutilizados.
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
END USER
MOBILE (IOS)
AWS MOBILE SDK
IOS
END USER
MOBILE (ANDROID)
AWS MOBILE
SDK ANDROID
ROUTE 53
CLOUDFRONT
SNS
SE
AR
C
HIN
G
COGNITO PUSH SYNC
MOBILE
ANALYTICS
COGNITO
COGNITO SYNC
STORE (FAVORITES)
Cuantos Servidores?
ROUTE 53
LAMBDA
DYNAMODB
CLOUDFRONT S3
COGNITO
EDITOR
WEB BROWSERAWS SDK
JAVASCRIPT
LAMBDA CALL FOR THUMBNAIL CREATION
CM
STHUMBNAILS
BA
CK
EN
D (
MB
aa
S) CATEGORIES AND ITEMS CREATION
AUTH
LAMBDA CALL FOR JSON + HTML PUBLISHING
AND INDEXING
S3
THUMBNAILS
JSON + HTML
CLOUDSEARCH
IND
EX
I
NG
FR
ON
TE
ND
END USER
WEB BROWSER
AWS SDK
JAVASCRIPT
END USER
MOBILE (IOS)
AWS MOBILE SDK
IOS
END USER
MOBILE (ANDROID)
AWS MOBILE
SDK ANDROID
ROUTE 53
CLOUDFRONT
SNS
SE
AR
C
HIN
G
COGNITO PUSH SYNC
MOBILE
ANALYTICS
COGNITO
COGNITO SYNC
STORE (FAVORITES)
Próximos pasos
Comience a usar sin pagar
• aws.amazon.com/free/
Blogs
• https://aws.amazon.com/blogs/aws/
• http://aws.typepad.com/brasil/
• http://blogs.aws.amazon.com/application-management
• http://blogs.aws.amazon.com/php/
• http://blogs.aws.amazon.com/net/
• http://ruby.awsblog.com/
• http://mobile.awsblog.com/
• http://java.awsblog.com/
• http://blogs.aws.amazon.com/security/
• https://medium.com/aws-activate-startup-blog
• https://blogs.aws.amazon.com/bigdata/
• https://aws.amazon.com/blogs/apn/
• https://aws.amazon.com/blogs/compute/
• http://sesblog.amazon.com/
Documentaciones (Getting Started)• Amazon Route53:
• http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/getting-started.html
• Amazon CloudFront:
• http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/GettingStarted.html
• Amazon S3:
• http://docs.aws.amazon.com/AmazonS3/latest/gsg/GetStartedWithS3.html
• Amazon Cognito
• http://aws.amazon.com/documentation/cognito/
• Amazon DynamoDB
• http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GettingStartedDynamoDB.html
• AWS Lambda
• http://docs.aws.amazon.com/lambda/latest/dg/getting-started.html
• Amazon CloudSerach
• http://docs.aws.amazon.com/cloudsearch/latest/developerguide/getting-started.html
• Amazon SNS
• http://docs.aws.amazon.com/sns/latest/dg/GettingStarted.html
Gracias!