Microservice Partitioning for Cloud Computing via Constrained Graph Neural Network Clustering

Jingyuan Liu, Yinglei Teng, Teng Zhong · 2023

With the rise of cloud computing, microservices architecture has become the preferred choice for modern software design. Microservices are inherently suited for cloud environments, as they allow for the dynamic allocation of resources based on demand, facilitating elastic scalability. However, the process of breaking down a monolithic application into microservices involves considering multiple complex factors, including not only code-level dependencies but also business functionality and constraints. For instance, there may be constraints such as certain classes that should not be placed within the same microservice. In this study, we propose a constrained graph neural network clustering algorithm that considers static, dynamic, and evolutionary data of the application simultaneously. Through static and dynamic analysis of monolithic applications and analysis of evolutionary data, we construct graph data and constraint pairs. Our research findings indicate that our approach not only enhances microservices partitioning metrics but also effectively distinguishes classes that are not suitable for inclusion within the same microservice.

Read the paper · More papers on PaperTik