Plataforma API Chivo Wallet

El Gobierno de El Salvador requería la creación de una serie de API’s que permitieran la interconexión entre Chivo Wallet y diversos Ministerios para poder realizar el proceso de ‘conozca a su cliente’. 

Fecha

Septiembre-Noviembre 2021

Cliente

Gobierno de El Salvador

Tipo de proyecto

Desarrollo de Solución

Detalles Del Problema

El Gobierno de El Salvador necesita obtener información de diversas fuentes de datos distribuidas en varios Ministerios y dependencias del gobierno, lo cual implicaba los siguientes retos:

  • Replicar información de múltiples fuentes en un repositorio centralizado.
  • Permitir un acceso seguro a los datos por medio de un API REST.
  • Realizar un despliegue de manera rápida y costo efectiva.
  • Evitar el uso de infraestructura que deba ser gestiona de manera manual.
  • Permitir enfocarse en la necesidad del área de negocios y no en temas operativos o de gestión de infraestructura.
  • Capacidad de soportar una carga sobre el API de alta demanda y patrones de acceso no establecidos.

Detalles De La Solución

Para resolver este problema, aplicamos nuestra experiencia previa con otros proyectos de alta demanda de tráfico y se determino que AWS contaba con todos los elementos que permitían superar los retos del cliente; en particular:

  • El uso de funciones Lambda para poder procesar altos volúmenes de consultas. Esto con el beneficio de ser un medio totalmente serverless y que nos permitía hacer una entrega rápida de acuerdo a la mejor práctica.
  • API Gateway permite tener un control adecuado de los API creados y su integración con Cognito permite que los procesos de autenticación y autorización al API sea simple.
  • API Gateway permite tener una capa de cache para permitir tener un mejor tiempo de respuesta ante las consultas más comunes que se reciben.
  • Al ser un servicio administrado, el equipo se despreocupa de la gestión del mismo y de los temas inherentes a escalabilidad y alta disponibilidad de los mismos.
  • Al no tener actividades de mantenimiento sobre servidores; como sería un abordaje tradicional, se posibilidad el uso de un equipo de trabajo más compacto y ágil.

 

Esta Solución Proporciona:
  • Un ambiente con auto escalamiento de la solución.
  • WAF para la protección ante ataques sobre la plataforma.
  • Solución serverless desde el API Gateway hasta la ejecución de código bajo demanda en Lambda.
  • Integración nativa con otros servicios de AWS, como CloudWatch y Cognito.
  • Monitoreo constante sobre el uso de los APIs
  • Retorno de la inversión

¿Cómo Fue Usado AWS?

Empleamos los siguientes servicios de AWS:  AWS API Gateway, AWS Lambdas, AWS Cognito,  AWS RDS, AWS DMSy muchos otros más; en el diagrama que se presenta a la derecha, se muestra una vista general de la solución.

Principales Servicios De AWS Utilizados

  • La principal solución utilizada en el sistema es AWS API Gateway y AWS Lambda.
  • La base de datos está dispuesta en AWS RDS en una configuración de varias zonas de disponibilidad y varias read-réplicas.
  • La protección de todo el sitio queda a cargo de AWS WAF.

 

  • AWS API Gateway se utilizo este servicio administrado para todo lo referente a los API creados y su ciclo de vida: creación, publicación, monitoreo, seguridad.
  • Terraform se utilizo para la gestión de infraestructura como solución de código, para proporcionar una manera de implementar la aplicación en múltiples entornos así como proporcionar una infraestructura versionable, rastreable y controlable. 
  • AWS CloudWatch se utiliza activamente como un servicio centralizado de registro y métrica, proporcionando una infraestructura vital para el almacenamiento de registros y consultas. Además, los eventos programados de AWS CloudWatch se utilizan para activar comprobaciones de estado y otras tareas programadas menores.
Lecciones Aprendidas

A través de las diferentes sesiones realizadas con el cliente, se logró un despliegue muy rápido y efectivo. Se asesoró al cliente en cómo se deben desplegar cargas como estas y el acompañamiento con el mismo fue muy importante para la consecución de las metas.

Siguientes Pasos

Este proyecto, es un referenciable para otros proyectos en el sector público, donde el despliegue de API Rest permitan la integración de múltiples fuentes de datos de una manera segura y ágil.

Resultados

Infraestructura

Una infraestructura que creciera con nosotros y tuviera costos muy competitivos; mismos que en una solución on premise no sería posible.

Alta Disponibilidad

  • Uso de servicios administrador como API Gateway y RDS
  • Solución empleado tecnología serverless, lo que permite escalar de acuerdo a la demanda manteniento un excelente retorno de la inversión.
  • Rentable (en comparación con un enfoque tradicional en centros de datos locales).

Elasticidad

La solución pudo atender todas las necesidades del cliente, con un lanzamiento exitoso y sin incidentes a pesar de la alta carga que se generó con el lanzamiento oficial por parte del Gobierno.

Nuestros servicios para
el Gobierno de El Salvador

AWS

  • AWS API Gateway
  • AWS Cognito
  • AWS RDS
  • AWS S3
  • AWS CloudFront
  • AWS Cloudwatch
  • AWS WAF

Migración a nube

  • WAF para la protección ante ataques sobre la plataforma.
  • Automatización de toda la telemetría de la plataforma.
  • Gestión robusta de la seguridad.

Servicios serverless

  •  AWS API Gateway
  • AWS Lambda

COMIENCE EL CAMBIO Y DESCUBRA TODAS LAS
VENTAJAS QUE TENEMOS.

¡Trabajemos juntos!

 DEJAMOS QUE NUESTRA EXPERIENCIA HABLE  POR NOSOTROS.

¿Necesitas más información?

Recursos

Errores habilituales que impactan tus costos

AWS posee un impresionante abanico de servicios que podemos emplear en un sinnúmero de cargas de trabajo diferentes. Esto nos permite implementar soluciones muy novedosas de una manera ágil y eficiente. Pero este poder conlleva consigo una gran responsabilidad; en...

Microservicios Tolerantes a Fallas

Microservicios Tolerantes a Fallas

En este artículo explicaremos tres patrones de estabilidad fundamentales para construir microservicios tolerantes a fallas. Patrones de Estabilidad Debemos entender que estos patrones lo que persiguen es promover la resiliencia en un sistema distribuido. Y en nuestra...