Skip to main content

Servicios

El sistema ASPA se compone de 5 servicios distintos. La comunicación principal entre ellos se refleja en el siguiente diagrama de flujo:

image

  • Frontend: Servicio encargado de mostrar la interfaz y los datos. Es el módulo con el que el usuario interactúa para aplicar filtros sobre los puntos geoespaciales y visualizar gráficamente los detalles de los resultados.
  • Back Node: Microservicio principal, desarrollado en Node.js, responsable de recibir y validar las peticiones del Frontend. Construye las consultas basándose en los filtros seleccionados por el usuario, mediante un motor QueryBuilder, para compartirlo con el Worker, minimizando su esfuerzo, acelerando y optimizando el proceso general.
  • Mongo: Base de datos NoSQL (MongoDB) donde se almacena la información sobre el historial de consultas, los datasets, los usuarios, etc.
  • Postgres: Base de datos relacional y espacial (PostgreSQL + PostGIS) que almacena la información de los puntos geoespaciales del sistema y sus posibles atributos de filtrado.
  • Worker: Microservicio de alto rendimiento, desarrollado en C++, para alcanzar la mayor eficiencia, encargado de ejecutar la consulta final, calcular los tiempos de accesibilidad y generar el CSV resultante de la manera más eficiente posible.