Wave reúne a millones de amigos con Claranet y Amazon Web Services

Resumen ejecutivo

Necesidad: La aplicación móvil Wave, desplegada sobre la infraestructura de Amazon Web Services, encontró dificultades a la hora de asumir grandes volúmenes de tráfico debido al rápido crecimiento de usuarios y a su concurrencia.

Solución: Claranet optimizó la plataforma que aloja la aplicación logrando que escalara automáticamente para dar respuesta a cualquier volumen de peticiones y que ofreciera una experiencia de uso óptima en cualquier lugar del mundo de forma segura y eficiente.

Resultado: Wave Application cuenta ahora con una solución más elástica, más disponible y más robusta, que permite a la aplicación sacar el máximo partido de AWS y a su equipo trabajar con mayor agilidad y seguridad.

Wave Application

Wave es una aplicación multiplataforma de creación española que permite localizar y quedar con contactos en tiempo real, a través de un mapa privado y por un tiempo limitado de forma sencilla, privada y gratuita.

Fundada en 2014, Wave lidera actualmente el mercado mundial de las aplicaciones de localización privada con más de 6 millones de usuarios registrados que crecen a un ritmo medio de 250.000 usuarios nuevos cada semana en más de 100 países del mundo, encabezados por España, Colombia, México, India, Chile, Argentina, Perú y Estados Unidos.

Desde su lanzamiento, Wave ha captado la atención de inversores públicos y privados, logrando una financiación total de más de 3,5 millones de euros que le está permitiendo consolidarse como una de las startups de mayor proyección del panorama nacional.

Wave reúne a millones de amigos con Claranet y AWS

El reto

Tras haber lanzado exitosamente Wave al mercado, la plataforma desplegada sobre Amazon Web Services que alojaba la aplicación se enfrentó a retos de escalabilidad durante los fuertes crecimientos de usuarios.

En ese punto, el equipo de Wave Application contactó con Claranet en busca de un partner experto en la gestión y optimización de soluciones cloud de alta concurrencia.

Las principales necesidades detectadas fueron:

  • Optimización del rendimiento de la aplicación y de la base de datos
  • Diseño de mejoras a nivel de arquitectura
  • Realización de despliegues sin interrupción del servicio
  • Asistencia en la mejora de la aplicación a nivel de código
  • Refuerzo de la seguridad de la plataforma

La solución

Tras el trabajo conjunto de optimización realizado por Wave y Claranet, la aplicación obtuvo una plataforma más robusta y más escalable, diseñada para lograr una disponibilidad óptima en todo momento, en cualquier lugar del mundo.

La aplicación desplegada sobre Amazon Web Services consiste en un backend a modo de API desarrollado en Python con Django y WSGI, que responde a peticiones REST desde la aplicación móvil.

Mediante el servicio de AWS ElasticBeanstalk la plataforma adapta su capacidad a la concurrencia de usuarios, incrementándola automáticamente cuando la actividad es mayor, y reduciéndola cuando ese aumento de recursos deja de ser necesario.

Esta configuración de autoescalado, unida a una distribución en múltiples Zonas de Disponibilidad (AZ), aporta a la solución alta disponibilidad a nivel de infraestructura. Además, para lograr la experiencia de uso óptima que exige una aplicación como Wave, la plataforma cuenta con soluciones de caché basadas en Memcached sobre clústers AWS ElastiCache, cuyos nodos están también repartidos en diferentes AZ.

Debido a la gran exigencia de la plataforma, se implementó una solución distribuida con una réplica de lectura, con lo que se consiguió optimizar el coste y maximizar el número de lecturas/escrituras. Por otro lado, la solución cuenta con una base de datos relacional Postgres bajo el servicio de AWS RDS, que permite configuraciones MultiAZ además de la realización de copias de seguridad mediante snapshots y recuperaciones Point In Time.

También a nivel de seguridad, Claranet diseñó un nuevo sistema de backup, configuró health-checks y estableció mecanismos de autorecuperación.

Además de estas mejoras a nivel de arquitectura, se agilizó el sistema de despliegue de nuevas versiones de la aplicación, permitiendo actualizaciones de código sin interrumpir el servicio y, vía AWS ElasticBeanstalk, rolling updates con estrategias tanto de Red/Black como de Blue/Green deployment en caso de necesitar cambios más estructurales.

Enfrentarse a un proyecto de escala mundial y tan ambicioso como Wave es un reto inmenso: la necesidad de ofrecer un servicio que funcione en tiempo real 24/7 hace que sea vital elegir muy bien a tus compañeros de viaje. En ese sentido, no hay mejor compañero que Claranet. Su conocimiento de plataformas cloud y sus servicios de monitorización nos permiten crecer sabiendo que tenemos el respaldo de un líder.”

Pablo Clemente
CTO de Wave Application

Beneficios

Gracias a la optimización realizada, Wave cuenta hoy con una solución más fiable y mejor preparada para hacer frente a futuros crecimientos y cambios, capaz de asimilar grandes confluencias de usuarios y de evolucionar sin interrumpir el servicio ni afectar a la experiencia de uso.

Así, el equipo de Wave Application dispone de un partner DevOps con quién sacar el máximo partido del cloud de Amazon Web Services, con quién evolucionar su aplicación en línea con la base tecnológica que la entrega a los usuarios y a quién confiar la monitorización 24x7 y las acciones reactivas y proactivas que permiten detectar rápidamente incidencias y asegurar la disponibilidad y la seguridad de la plataforma en todos los escenarios.

Descarga como PDF