Proyecto Entrega 5 - fredyalarcon/desarrollo-sw-nube-hfma GitHub Wiki
Arquitectura, conclusiones y consideraciones
Tecnologías utilizadas
| Funcionalidad | Nombre |
|---|---|
| Lenguajes de programación | Python |
| Bases de datos | Mysql |
| Servicio de mensajería asincrono | Cloud Pub/Sub |
| Frameworks de desarrollo | Flask |
| Servicio de almacenamiento archivos | Cloud Storage |
| Instancia Base de datos | Google Cloud SQL |
| Plataforma de ejecución | Google Cloud Run |
Componentes
| Listado de componentes | Propósito y comportamiento esperado | Tecnología Asociada | Servicios GCP |
|---|---|---|---|
| API | Gestiona la creación de los usuarios, generación del token y las tareas de conversión de archivos. | Python Flask, Mysql, Google cloud run | Cloud run api-converter |
| Worker | Procesa la conversión del archivo. | Python Flask, Mysql, Google cloud run | Cloud run worker-converter |
| Mensajería asíncrona | Gestionar los mensajes de las tareas para que puedan ser procesadas | Cloud Pub/Sub | Cloud Pub/Sub |
| Almacenamiento archivos | Recurso compartido para almacenamiento de archivos | Cloud Storage | Cloud Storage bucket-web-converter |
Vista de contexto
Modelo de contexto
Vista funcional
Modelo componente - conector
Vista información
Modelo de clases
Modelo de información
Vista de despliegue
Modelo de despliegue
Conclusiones y Consideraciones
- A continuación, se muestran las reglas definidas de auto escalamiento.
Para el API y el worker se implemento Cloud run, realizando las modificaciones correspondientes en el código para crear la imagen y configurar las conexiones necesarias en Cloud run fue posible configurar ambos servicios de una más fácil que en las entregas anteriores. Respecto al auto escalamiento consideramos a pesar del poco control que tenemos en los servicios tipo PaaS para configurarlo, este brinda suficientes beneficios para lograr el objetivo planteado en nuestras pruebas.