Programación reactiva con Spring Boot
Autores
Arroyo Nogales, ÓscarDirector
Otón Tortosa, SalvadorFecha de publicación
2021Filiación
Universidad de AlcaláCita bibliográfica
Arroyo Nogales, Óscar. Programación reactiva con Spring Boot. Trabajo Fin de Máster. Universidad de Alcalá, 2021.
Palabras clave
Programación reactiva
Reactive programming
Spring
Spring WebFlux
MongoDB
NoSQL
Microservicios
Microservices
RESTFul
Heroku
GitLab
Kanban
Tipo de documento
info:eu-repo/semantics/masterThesis
Versión
info:eu-repo/semantics/acceptedVersion
Derechos
Attribution-NonCommercial-NoDerivatives 4.0 Internacional
Derechos de acceso
info:eu-repo/semantics/openAccess
Resumen
El objetivo de este Trabajo Final de Máster es conocer la programación reactiva en el marco de trabajo Spring 5 junto con Spring WebFlux y con ello, desarrollar una aplicación con esta tecnología: una aplicación para comerciales autónomos.
La arquitectura de la aplicación está dividida en una base de datos MongoDB NoSQL (no relacional) y dos microservicios, cada uno de ellos con un papel distinto dependiendo de su función: el microservicio sales-api hace de servicio RESTFul reactivo para consultar datos y realizar operaciones en la base de datos, y sales-client, que actúa como frontend de la aplicación. Es quien llama a sales-api dependiendo de las necesidades que tenga en cada momento de interacción con el usuario.
Esta aplicación, que en conjunto recibe el nombre de Sales tiene como objetivo servir de herramienta de gestión de facturas, pedidos y clientes para los comerciales autónomos que son representantes de uno o varios proveedores.
Sales también contempla un rol de administración que facilita operaciones como la modificación de los datos de un cliente, de un proveedor o asignación de un autónomo como representante de un proveedor. Para contemplar estos roles se ha desarrollado un inicio de sesión o login seguro, haciendo uso del marco java Spring Security, que proporcionará seguridad a cada uno de los microservicios que intervienen en la aplicación.
Por último, para el desarrollo de este trabajo se ha utilizado Kanban como técnica de gestión visual de flujos continuos de avance y seguimiento de incidencias, implementaciones y sugerencias de diseño. The objective of this Master's thesis is to learn about reactive programming in the Spring 5 framework together with Spring WebFlux and, with it, to develop an application with this technology.
The architecture of the application is divided into a MongoDB NoSQL database (non-relational) and two microservices, each of them with a different role depending on its function: the microservice sales-api acts as a reactive RESTFul service to query data and perform operations on the database, and sales-client, which acts as the frontend of the application. It is the one who calls sales-api depending on the needs it has at each moment of interaction with the user.
This application, which is collectively called Sales, is intended to serve as an invoice, order and customer management tool for self-employed salespeople who are representatives of one or more suppliers.
Sales also includes an administration role that facilitates operations such as modifying the data of a customer, a supplier or assigning a freelancer as a representative of a supplier. To contemplate these roles, a secure login has been developed, making use of the java Spring Security framework, which will provide security to each of the microservices involved in the application.
Finally, for the development of this work, Kanban has been used as a technique for visual management of continuous progress flows and monitoring of incidents, implementations, and design suggestions.
Ficheros en el ítem
Ficheros | Tamaño | Formato |
|
---|---|---|---|
TFM_Arroyo_Nogales_2021.pdf | 5.346Mb |
![]() |
Ficheros | Tamaño | Formato |
|
---|---|---|---|
TFM_Arroyo_Nogales_2021.pdf | 5.346Mb |
![]() |