![Page 1: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/1.jpg)
#GX24
De 0 a 2.000.000 de usuarios
Arquitectura de la appLigaMX
Armin Bachmann
@arminbachmann
![Page 2: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/2.jpg)
![Page 3: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/3.jpg)
#GXMX
• Liga profesional de fútbol de México
• TOP 10
• Población 122.3 millones
• 40.4 millones de smartphones
![Page 4: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/4.jpg)
#GXMX
• iOS & watchOS2
• Android
• Liberada: Febrero 2015
APP LIGAMX
![Page 5: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/5.jpg)
2.000.000DOWNLOADS
![Page 6: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/6.jpg)
![Page 7: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/7.jpg)
![Page 8: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/8.jpg)
![Page 9: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/9.jpg)
![Page 10: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/10.jpg)
Desafíos
![Page 11: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/11.jpg)
#GXMX
• Mobile Native Apps
– iOS
– Android
• Great UX
USER PERSPECTIVE
![Page 12: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/12.jpg)
#GXMX
• Extremadamente alta demanda
• Alta disponibilidad
• Push Notifications
• Imágenes, Video Streaming
• Cloud
• Servicios Externos (LigaMX API)
LO QUE NO SE VE
![Page 13: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/13.jpg)
Diseñada para escalar
![Page 14: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/14.jpg)
ArquitecturaInfraestructura
Desarrollo
![Page 15: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/15.jpg)
Extramadamente alta demanda
![Page 16: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/16.jpg)
User Interface
REST
Business Logic
REST Interface
DATA LAYER
Business Logic
Native
MOBILE
Client
WEB SERVER
DATABASE
REST/JSO
N
![Page 17: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/17.jpg)
0
50
100
150
200
250
300
350
400
450
App
1x WebServer Throughput (req/second)
App
![Page 18: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/18.jpg)
10.000 req/s - 25 WEB
SERVERS
![Page 19: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/19.jpg)
User Interface
REST
Business Logic
REST Interface
DATA LAYER
Business Logic
Native
MOBILE
Client
WEB
SERVER
DATABASE
REST/JSO
N
CACHE
CACHE
Cache
![Page 20: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/20.jpg)
CACHE WEB SERVER
![Page 21: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/21.jpg)
0
500
1000
1500
2000
2500
3000
3500
4000
4500
App Cache ON
1x WebServer Throughput (req/second)
App
Cache ON
![Page 22: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/22.jpg)
> 40.000
Usuarios simultáneos
![Page 23: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/23.jpg)
Requests per minute
220.000 req/min
![Page 24: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/24.jpg)
Latencia promedio por minuto
9ms
Tiemo de respuesta
promedio
![Page 25: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/25.jpg)
Elasticidad
![Page 26: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/26.jpg)
DATABASE
WEB SERVER
REST
![Page 27: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/27.jpg)
LOAD BALANCER
BD
WEB SERVERS
REST/JSON
![Page 28: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/28.jpg)
5 minutos
![Page 29: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/29.jpg)
ImágenesVideo
Ancho de banda
![Page 30: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/30.jpg)
> 80 GB en disco
IMÁGENES Y VIDEO
![Page 31: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/31.jpg)
LB
BD
![Page 32: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/32.jpg)
LB
Contenido
estático
AWS S3
Imágenes,
videos
![Page 33: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/33.jpg)
Contenido
estático
AWS S3
Imágenes,
videos
JSON, dynamic
content
http://appligamx.com/myapv1/Resources/Team/america.png
https://s3.amazonaws.com/futbolx/ligamx/teams/america/badge.png
![Page 34: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/34.jpg)
5.000 GB / mes
Transferencia de
datos
![Page 35: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/35.jpg)
PUSH NOTIFICATIONS
![Page 36: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/36.jpg)
![Page 37: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/37.jpg)
TEAM1 TEAM2 TEAM3
Canales
![Page 38: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/38.jpg)
TEAM1 TEAM2 TEAM3
![Page 39: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/39.jpg)
200.000.000
Notificaciones enviadas
250.000
Por segundo
![Page 40: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/40.jpg)
RestriccionesBuenas Prácticas
![Page 41: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/41.jpg)
Web Services
![Page 42: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/42.jpg)
LOAD BALANCER
DB
PUSH
NOTIFICATIONS,
OPERATIONS
DATA UPDATE
![Page 43: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/43.jpg)
CODE OPTIMIZATION
![Page 44: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/44.jpg)
![Page 45: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/45.jpg)
![Page 46: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/46.jpg)
#GXMX
• In RAM Memory -> Distributed Caching
• In Database
(With expiration time or not)
CACHING
![Page 47: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/47.jpg)
Bajos costos de infraestructura
![Page 48: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/48.jpg)
LOAD BALANCERStatic
Content
AWS S3
MYSQL
RDS
Windows
Server 2008
REST
JAVA LINUX TOMCAT
Imágenes
video
PUSH
NOTIFICATIONS &
Actualización de datos
REST
![Page 49: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/49.jpg)
Infraestructura
5x LINUX 4GB RAM, 2 CORES
LINUX SVN SERVER
WINSERVER 2008 (Push Notification + Data Update)
RDS MYSQL: 2 CORE, 8GB RAM
AWS S3 para Contenido Estático
LOAD BALANCER
(AWS)
![Page 50: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/50.jpg)
TIPS
![Page 51: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/51.jpg)
![Page 52: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/52.jpg)
![Page 53: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/53.jpg)
![Page 54: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/54.jpg)
#GXMX
• 2.000.000 downloads
• + 400.000 usuarios los fines de semana
• 200.000.000 push notifications
• + 40.000 usuarios conectados simultáneos
ANALYTICS
![Page 55: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/55.jpg)
#GXMX
• Foco en Usuario:
– UX, Diseño
– Comportamiento
• Cuidado en
– Arquitectura
– Infraestructura
![Page 56: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/56.jpg)
![Page 57: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/57.jpg)
#GXMX
• iOS & watchOS2
• Android
• Desarrollada con GeneXus
MOBILE APP LIGAMX
![Page 58: LigaMX con GeneXus: De 0 a 1.700.000 de usuarios](https://reader034.vdocuments.co/reader034/viewer/2022051521/587960e71a28ab1e388b6393/html5/thumbnails/58.jpg)
¡MUCHAS GRACIAS!
Armin Bachmann – [email protected] - @arminbachmann
Credits to Gonzalo Gallotti – [email protected]