Kakao Emoticon Team's Transition from Legacy Monolith to MSA: Leveraging Kubernetes, ArgoCD, and Spring Cloud Gateway
Key point
The Kakao Emoticon team transitioned a legacy monolith service with annual sales of 100 billion KRW to an MSA architecture using Kubernetes, ArgoCD, and Spring Cloud Gateway, reducing deployment burden and improving maintainability.
Details
The Kakao Emoticon team proceeded with an MSA transition to resolve accumulated technical debt (such as Play 1.2.7, Java 7) and deployment burdens in a mature service that achieved 100 billion KRW in annual sales eight years after its launch. The process accelerated with the introduction of Kubernetes. Initially, Kustomize was used to reduce the complexity of YAML management, but ArgoCD was later adopted to improve deployment history management and visibility, establishing a GitOps workflow. Istio and Kiali were applied for inter-service connectivity and monitoring. Spring Cloud Gateway was adopted as the API gateway to gradually separate functions from the legacy service, centralizing common logic such as authentication and isolating the legacy system through path-based routing. Criteria for service separation included single functional purpose, resource sharing, and personal data protection. After applying MSA, maintainability improved, with clearer role division and reduced risk of code mixing during deployments. However, transaction issues due to increased network I/O and difficulties in sharing domain knowledge remain as new challenges. Future plans include optimizing performance using Event Driven design, gRPC, and WebFlux.
This summary was generated automatically by AI. Check the original for the author's claims and context. Copyright belongs to the original author.
Our guide explains how the AI works. Report summary errors, attribution issues, or removal requests via Contact.