banner logo of full name of the blog, The Roxs Dev

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 🔥!