The study is dedicated to increasing the throughput of server applications by implementing the migration of the application from a monolithic architecture to a microservices architecture. The object of research in this work is server applications implemented using both monolithic and microservices architectural approaches. The subject of the research is the evaluative characteristics of applications implemented with monolithic and microservices approaches. The main focus is on the conditions under which all experiments were conducted, which were standardized using the Docker software platform and remained unchanged throughout the entire research period. The aim of the research is to assess the quality of the migration of the application from a monolithic architecture to a microservices architecture. The authors examine application migration strategies in detail and point out the inadequacy of existing systems of criteria for evaluating the quality of the migration process. As part of the study, an analysis of existing application migration strategies from monolithic architecture to microservices was conducted, and a phased migration strategy was chosen for practical implementation. The research involved the migration of an application and testing based on Grafana K6. Monitoring of testing results was carried out in the Prometheus environment together with Grafana, where specified criteria were tracked. The scientific novelty of this research lies in the fact that a generalized and substantiated system of criteria for evaluating the quality of the migration of an application from a monolithic architecture to a microservices architecture is proposed for the first time. During the experiment, the stages of migrating a monolithic application were determined based on its functional tasks, resulting in the identification of three microservices, two of which interacted via the Apache Kafka message broker. Subsequently, the migration of the monolithic application was performed, followed by testing using Grafana K6, organized according to the previously prepared stages. For a comprehensive assessment of migration quality and to obtain objective results, the testing was divided into three phases: modeling standard load, conducting load testing, and analyzing the performance of the scaled system. The results of the study show that the microservices application obtained after migration has greater stability and throughput in handling requests, easier scalability due to the ability to scale individual services of the application, despite the lower speed of the initial deployment of the microservices application compared to the monolithic one.
Zhiltsov et al. (Thu,) studied this question.