뱅크샐러드, 레거시 시스템을 Go, MySQL 기반 MSA로 성공적으로 전환!
by DD
5년 전
조회수 6
뱅크샐러드는 레거시 서비스의 복잡도 증가로 마이크로서비스 전환을 결정함
섀도잉 기법을 활용하여 디프(Diff) 0을 목표로 서비스 분해를 진행함
Go, MySQL 기반의 신규 서비스 구축 및 협업 강화를 통해 개발 속도 향상
섀도잉을 통한 서비스 분해
섀도잉은 기존 레거시 서비스와 신규 서비스의 응답을 비교하여 디프(Diff)를 찾아내는 기술이다. 구체적으로, 기존 서비스에 대한 요청을 신규 서비스에도 동일하게 전송하고, 응답 값의 차이를 분석한다. 따라서 데이터 정합성을 확보하고, 서비스 안정성을 높이는 데 기여한다.
MSA 전환의 핵심: 템플릿과 협업
뱅크샐러드는 Go, gRPC 기반의 서버 템플릿을 제작하여 개발 생산성을 향상시켰다. 반면, 매일 15분, 프로젝트 막바지에는 2시간 간격으로 스탠드업 미팅을 진행하여 협업의 효율을 높였다. 결과적으로, 의사 결정 속도를 높이고, 프로젝트의 성공적인 완수를 이끌었다.
레거시 시스템 분해의 성공 요인
레거시 시스템 분해 프로젝트의 성공은 목표가 아닌 것을 명확히 정의하고, 원칙을 세운 데 있다. 구체적으로, API 설계 변경과 같은 개선 사항을 목표에서 제외하여 프로젝트의 복잡도를 관리했다. 따라서 프로젝트의 가시성을 확보하고, 개발 속도를 향상시켰다.
댓글 0
첫 번째 댓글을 남겨보세요!