{"title":"A method for microservice partitioning of monolithic systems based on multifeature fusion","authors":"Xiaoyan Gao, Junfeng Zhao","doi":"10.1117/12.3031975","DOIUrl":null,"url":null,"abstract":"With the popularity of microservices architecture, how to refactor a monolithic system into a microservices architecture has become a challenge. Traditional system refactoring strategies often focus on a single aspect, such as conducting source code analysis or system load analysis in isolation. This approach has a limited perspective and cannot comprehensively integrate the diverse characteristics of the system for refactoring. This paper proposes a microservices partitioning method for monolithic systems that integrates multiple features. Firstly, it integrates source code and runtime system data to comprehensively acquire system characteristics. By calculating the semantic similarity of class documents, the similarity of abstract syntax trees, and the frequency of interaction between classes, three types of weights are generated. Then, by assigning different weights, a comprehensive weight is calculated to construct an undirected weighted graph representing dependency relationships. Finally, the Chinese Whisper clustering algorithm is used to partition monolithic systems, obtaining suitable microservice modules. Experimental results show that this method can help developers better understand and partition the system, achieving a microservices architecture with high cohesion and low coupling.","PeriodicalId":198425,"journal":{"name":"Other Conferences","volume":"210 s695","pages":"131751R - 131751R-10"},"PeriodicalIF":0.0000,"publicationDate":"2024-06-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Other Conferences","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1117/12.3031975","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
With the popularity of microservices architecture, how to refactor a monolithic system into a microservices architecture has become a challenge. Traditional system refactoring strategies often focus on a single aspect, such as conducting source code analysis or system load analysis in isolation. This approach has a limited perspective and cannot comprehensively integrate the diverse characteristics of the system for refactoring. This paper proposes a microservices partitioning method for monolithic systems that integrates multiple features. Firstly, it integrates source code and runtime system data to comprehensively acquire system characteristics. By calculating the semantic similarity of class documents, the similarity of abstract syntax trees, and the frequency of interaction between classes, three types of weights are generated. Then, by assigning different weights, a comprehensive weight is calculated to construct an undirected weighted graph representing dependency relationships. Finally, the Chinese Whisper clustering algorithm is used to partition monolithic systems, obtaining suitable microservice modules. Experimental results show that this method can help developers better understand and partition the system, achieving a microservices architecture with high cohesion and low coupling.