social apps en windows azure
Post on 26-Jun-2015
1.320 Views
Preview:
DESCRIPTION
TRANSCRIPT
1
2
Social Apps en Windows Azure
Gabriel SzlechtmanGuido Vilariño
Three Melons Playdom Disney
Qué te vas a llevar
Una idea concreta de qué es una social app.Criterios de diseño y arquitectura para la escalabilidad sobre Windows Azure.Overview de la arquitectura de Bola.
Qué NO te vas a llevar
Una receta aplicable a cualquier social app.Código funcionando.MelonCash.
¿Social Media?
Social Media
¿Social App?
Social App
9
Qué tener en cuenta
TargetPersonas, culturas, lenguajes.¿Red(es) social(es)? -> No atarse a ninguna.
Comunidad
Viralidad
MonetizaciónMecanismos de monetización.
NO pueden fallar.
10
Qué tener en cuenta
ContenidoDinámico; ciclos de update cortos.Localización.
Métricas (!)DAU, MAU, ARPAU, Retention rate.
Monitoreo (!)Salud (CPU usage, requests/sec, etc.)24/7 uptime; no se puede medir el downtime.
12
Bola facts
Seis idiomas1M+ DAUs durante el mundialCliente Flash – Backend AzureExiste en varias redes sociales
FacebookOrkutSonico
13
El clienteFrontend Backend
Reglas
Red social
14
El servidor
Frontend
Blob Storage
Table Storage
Queues
Web Role
Worker Role
15
Premisas de diseño en Azure
Si tenés muchos datos, particioná tablas
¡Balanceá las particiones!
Si tenés procesos costosos, utilizá queues
Las queues agregan latenciaOjo con los “long running processes”
Si tengo lecturas >> escrituras, utilizá blobs
Los blobs se leen de a unoLos blobs son opcionalmente públicos
16
Ambientes
Local
Staging
Producción
17
Características de Azure
Puedo agregar VMs cuando quiero• Excepto que esté agregando VMs ahora
Las VMs son opacas
La base está…• Pero no le pidas más que 500 requests/seg/partición
18
Características de Azure (cont)Garantía del 99,95% en cómputo• Si tenés más de un server• Ojo que los pueden reiniciar
Queries a tablas: < 10 segundos• Sino devuelven continuation tokens• Máx 1000 rows por query
19
RetryPolicy
20
RetryPolicy
21
MapReduce
22
MapReduce V1: Naive
23
MapReduce V2: Zerg Rush!
24
MapReduce V3: Complete!
25
MapReduce V3: Complete!
26
Tools
«Cloud Storage Studio»http://www.cerebrata.com
«Azure MMC»http://code.msdn.microsoft.com/windowsazuremmc
«MyAzureStorage»https://myazurestorage.com/
27
Los mandamientos de Azure
No llamarás a GC.Collect() en concurrenciaNo crearás threads en tus Web RolesNo serializarás TableServiceEntityEvitarás arrojar excepcionesEvitarás las Colisiones“Loguearás“ en un storage dedicadoUsarás DateTime.UtcNowEl backend hablará inglés, el mundo NOPlanearás tus deployments, FGJ
28
Y si no cumplís…
29
Preguntas
30
Contact Us
Gabriel@gabrielszgabrielsz@threemelons.com
Guido @gvilarinogvilarino@threemelons.com
Play Bola! www.playbola.com
31
Los mejores proyectos de las células Microsoft, los grupos de investigación de
estudiantes, son seleccionados para participar en el espacio del DEMOFEST.
¡Conocélos!
Participá del DEMOFEST
32
Necesitamos tu Feedback!
Completá los FORM de avaluación que estarán en nuestra WEB:www.codecamp.com.arNecesitamos de tu feedback para mejorar.
33
© 2008 Microsoft Corporation. Todos los derechos reservados. Microsoft, Windows, Windows Vista y otros nombres de producto son y pueden ser marcas registradas y registros en Estados
Unidos y en otros países.La información contenida en el presente es sólo para fines informativos y representa la visión actual de Microsoft Corporation a la fecha de esta presentación. Debido a que Microsoft debe
responder a las cambiantes condiciones del mercado, no se debe interpretar como un compromiso por parte de Microsoft, y Microsoft no puede garantizar la precisión de ninguna
información provista después de la fecha de esta presentación. MICROSOFT NO OFRECE GARANTÍA ALGUNA, EXPRESA, IMPLÍCITA O DE LEY, RESPECTO A LA INFORMACIÓN EN ESTA
PRESENTACIÓN.
top related