Reto Final V2 [Level 200]
Caso de estudio - Servicio web de consultas devops
Nuestra aplicación es un servidor web que expone una serie de endpoints:
- Alta de usuarios, que recibe un email y una contraseña y crea un nuevo usuario en el sistema (Si no existe)
- Login de usuarios, que para un par de email/contraseña válido devuelve un token válido durante 30 minutos.
- Los siguientes endpoints necesitan recibir un token válido en la cabecera HTTP "X-Service-Token"
- /almacena, que guarda las frases que recibe en una base de datos.
- /query, que devuelve el número de veces que una palabra aparece en frases del almacenamiento.
- /logout - expira el token
- /delete - elimina el usuario y expira el token
El servicio se apoya en una base de datos SQL [SQLite] para almacenar la información operativa: cadenas de búsqueda y usuarios.
El servicio almacena métricas de uso para cada endpoint en una base de datos NoSQL como Redis:
- número total de invocaciones
- tiempo medio de respuesta
Implementación
Se ha optado por realizar una implementación del servicio usando Python y Flask mediante peticiones POST y GET al servidor.
Entrega Reto Final 🚀🚀🚀
Repositorio Challenge IV Edición Bootcamp DevOps by RoxsRoss here.
Formulario de Entrega here
No se puede crecer si no estas dispuesto a saltar a la zona del peligro 🔥!