The subject matter of research is the routing of requests in the microservice architecture. The goal of the article is to develop a target design concept for the level of request routing in the microservice architecture using the Spring technology stack as an example. Tasks: to analyse modern approaches to the structure of microservice architecture; programming of the routing entity and establishment of processes that ensure the routing of requests; programming stacks of Spring technologies that implement routing; design the routing layer of the application on the Spring platform. The following methods are used: analysis and synthesis to study technologies of interaction between services; abstraction and generalization to determine the structure of the microservice architecture, routing level, generalization of technologies that ensure interaction between services; modelling for the purpose of building a model of microservice architecture, highlighting the level of routing and connections with other structural models. The following results were obtained: the structure of the microservice architecture was investigated, in particular the level of routing; the role of design patterns that provide routing is defined: Service discovery, API Gateway, Load Balancer, etc.; the types of interprocess interaction (synchronous, asynchronous, hybrid) were analysed and the advantages and expediency of the application were determined; models of system fault tolerance are presented; a stack of technologies on the Spring platform is defined for the implementation of the routing layer; a model of a multi-level microservice architecture project was developed using the Spring technology stack, which implements the most effective solutions in the context of request routing. Conclusions: it is advisable to consider microservice architecture as a multi-level structure built on functional levels and connections between them; the level of microservices routing should include all processes related to the establishment of interprocess interaction, service detection, load balancing and fault tolerance, and the creation of a single entry point; Spring is a popular microservice architecture development tool platform that provides requirements for implementing request routing; the developed project model is an example of effective solutions for designing a multi-level architecture using the Spring technology stack in the context of request routing.
Read full abstract