-
[IT 트렌드] MSA가 뭐길래?독서 & IT 트렌드 2025. 3. 16. 16:22
MSA (마이크로 서비스 아키텍쳐)
스마트폰의 잠금 버튼이 고장나서 터치, 전화 등의 다른 기능까지 먹통이 된다면, 소비자는 어떤 생각을 할까요?
기업들의 소프트웨어 서비스도 마찬가지입니다. 하나의 기능 결함으로 다른 기능까지 동작을 멈추게 된다면 서비스 운영에 어려움이 있을 것입니다.
그래서 기업들은 기능 분리에 초점을 맞추고, 모놀리식 아키텍쳐(하나의 소프트웨어로 전체 시스템을 운영하는 방식)에서 MSA로 전환을 시도하고 있습니다.
위 내용처럼 MSA는 독립적인 서비스들을 기준으로 소프트웨어를 나누고 조합해 전체 시스템을 개발하고 운영하는 방식입니다. 기업들이 MSA를 선택하는 이유는 대규모 소프트웨어의 안정성을 개선할 수 있기 때문입니다. 그리고 클라우드 환경에서 사용량이 많은 서비스만 선택적으로 확장이 가능해 비용 절감의 이유로 MSA를 선택하기도 합니다.
그럼 모든 시스템은 MSA로 설계가 필요하고 필수적으로 선택해야 할까요?
MSA의 부정적인 관점
서비스 독립적으로 개발과 배포를 하며 빠르게 대응할 수 있는 장점을 가진 MSA는 긍정적인 점만 존재하는 것은 아닙니다.
MSA는 서비스의 데이터베이스도 독립적으로 존재해 데이터의 일관성에 문제가 생길 수 있습니다. 특히, 데이터의 오류는 고객으로부터 신뢰성을 잃어버릴 수 있기에 굉장히 중요한 문제 중 하나입니다. 그리고 각 서비스들은 API를 통해 서로 통신하기 때문에 네트워크에 문제가 생긴다면 성능의 문제도 생길 수 있습니다.
이처럼 데이터 분리, 기능 분리, 네트워크 문제 등을 관리해야하는 복잡한 요소들이 존재합니다. MSA의 복잡성을 제대로 관리하지 못한다면 성능 저하와 비용 증가를 초래할 수 있습니다.
그럼에도 기업들에서 MSA 도입을 검토하고 시도하는 이유는 무엇이 있을까요?
MSA 도입 시나리오
곽사장의 회사는 인터넷을 통해 상품을 판매하고, 영상 콘텐츠도 시청할 수 있는 비즈니스를 하고 있습니다. 초기에는 단일 소프트웨어로 운영하였는데, 고객들이 많아지면서 시스템이 자주 다운되는 문제가 있었고 새로운 기능을 추가 오픈하면 모든 서비스를 다시 업로드하는 위험이 존재했습니다.
이를 본 곽사장은 MSA로 전환을 결정했습니다. 그 후 상품 검색, 결제, 영상 시청 등의 개별 마이크로서비스로 나뉘게 되었습니다. 이 후에는 결제 서비스에서 오류가 생겨도 영상을 시청하는 고객들에게는 영향이 없었고, 새로운 기능 개발의 속도 향상으로 시장 대응력이 증가하는 긍정적인 효과를 경험할 수 있었습니다.
곽사장이 MSA 전환에 큰 성과를 얻은 이유는 이전에 MSA 도입의 실패를 경험했기 때문입니다.
이전에는 서비스를 미세 단위로 분리하여 서비스 간 통신이 복잡해지고 성능이 저하되는 것을 경험했습니다. 그리고 각 서비스마다 데이터베이스를 운영하다보니, 여러 서비스 간의 데이터 일관성을 유지하기에 어려움을 느끼면서 MSA 관리가 제대로 이루어지지 않아 실패한 경험이 있었습니다. 이러한 실패 경험을 토대로 이번 전환에는 성공할 수 있었습니다.
마무리 의견
MSA는 다양하고 세부적으로 분리하는 것이 중요한게 아니라, 효율적인 서비스 분리 전략이 우선적으로 수립되어야 한다고 생각합니다.
'독서 & IT 트렌드' 카테고리의 다른 글
[독서] 데이터는 예측하지 않는다 (0) 2025.03.17 [독서] 챗봇 2025 트렌드 & 활용백과 (0) 2025.03.16 [IT 트렌드] CDN이 뭐길래? (0) 2025.03.16 [IT 트렌드] 디지털 전환이 뭐길래? (0) 2025.03.14 [IT 트렌드] 클라우드가 뭐길래? (0) 2025.03.14