Content area
Microservice is a popular architecture for developing cloud-native applications. However, decomposing a monolithic application into microservices remains a challenging task. This complexity arises from the need to account for factors such as component dependencies, cohesive clusters, and bounded contexts. To address this challenge, we present an automated approach to decomposing monolithic applications into microservices. Our approach uses static code analysis to generate a dependency graph of the monolithic application. Then, a variational autoencoder (VAE) is used to extract features from the components of a monolithic application. Finally, the C-means algorithm is used to cluster the components into possible microservices. We evaluate our approach using a third-party benchmark comprising both monolithic and microservice implementations. Additionally, we compare its performance against two existing decomposition techniques. The results demonstrate the potential of our method as a practical tool for guiding the transition from monolithic to microservice architectures.
Details
; Korn, Sooksatra 1
; Cerny Tomas 2
; Rajbhandari Yudeep 1
; Shrestha Sakshi 3 1 Department of Computer Science, Baylor University, Waco, TX 76798-7141, USA; [email protected] (K.S.); [email protected] (Y.R.)
2 Department of Systems and Industrial Engineering, University of Arizona, Tucson, AZ 85721-0020, USA
3 Department of Computing, East Tennessee State University, Johnson City, TN 37614-1700, USA; [email protected]