Microservice Migration Using Strangler Fig Pattern: A Case Study on the Green Button System
Chia-Yu Li, Shang‐Pin Ma, Tsung-Wen Lu · 2020
Microservice is a software architecture style which is adopted widely and rapidly in recent years. An application of microservice architecture (MSA) consists of multiple small microservices. Each microservice is autonomous, as well as easy to scale up, test, and maintain. Nowadays, many enterprises choose to replace existing monolithic architecture with MSA to enhance software quality. Accordingly, the microservice migration has become a hot topic of practical research. However, a complete and systematic microservice migration process is still lacking. Therefore, we propose a microservice migration approach based on the Strangler Fig pattern and Domain-Driven Design (DDD) to provide a complete architecture migration process and involving methods. Besides, we applied the proposed approach in an existing monolithic application, the DataCustodian system of the Green Button project. In the case study, appropriate microservices were successfully identified and established using the Strangler Fig pattern. We also conducted quantitative experiments to evaluate the performance of both new microservices and unmigrated modules during the architecture migration.