CASE STUDY
고객사별 OpenMSA™ 도입 사례와 결과를 확인해보세요.

OSC Tech News

다양한 소식을 전합니다.
OSC Korea 월간 뉴스레터 받아보기 💌

OSC Korea의 Ellen이 매월 넷째주 화요일 전해드리는 IT 소식!

IT 관련 종사자가 궁금해하는, 알아야하는 정보들을 담았어요.
Opensource, DevOps, Cloud, MSA 그리고 IT 트렌드까지!
한 달에 한 번만 메일함으로 찾아갈게요😊
OSC 월간 뉴스레터 받아보기💌

개인정보 수집 및 이용

뉴스레터 발송을 위한 최소한의 개인정보를 수집하고 이용합니다. 수집된 정보는 발송 외 다른 목적으로 이용되지 않으며, 서비스가 종료되거나 구독을 해지할 경우 즉시 파기됩니다.

Blog

MSA(Micro Service Architecture)는 무엇이며, 왜 필요할까요?

2022.04.28 MSA(Micro Service Architecture)는 무엇이며, 왜 필요할까요?
원문보기

마이크로서비스 아키텍처(Microservices Architecture, MSA)는 IT 업계에서 대세로 떠오르며, 엔터프라이즈 서비스 개발 프로젝트에 활발히 채택되고 있습니다.

서비스 개발과 관련있다면 마이크로서비스 아키텍처(Microservices Architecture, MSA)를 한번 이상은 들어보셨을겁니다. MSA는 애플리케이션을 빠르게 개발하고 성능을 지속적으로 높여 나갈 수 있는 장점 덕분에 각광받고 있으며 아마존, 쿠팡, 넷플릭스 등의 국내외 대기업들이 MSA를 채택하면서 더욱 높은 관심을 받고 있습니다. 특히나 마이크로서비스 아키텍처가 이미 성숙기에 접어들었다는 시장조사업체 가트너의 연구 결과에 따라 확실히 MSA가 IT 업계의 트렌드임을 알 수 있습니다.

이렇게 모든 관계자의 관심이 쏠려 있는 MSA,

MSA는 왜 필요하고 기본의 아키텍처와는 무엇이 다른지, 어떤 특징이 있고 어떤 과정으로 도입되는지 쉽게 알아보겠습니다.

고객은 안정적이고 빠른 서비스를 원하며, 기업은 고객 만족도 향상을 위해 신속하고 안전한 서비스를 출시, 제공하기를 원합니다.

이때 필요한 것이 MSA의 도입입니다.

만약 여러분이 해외구매대행 사이트에서 쇼핑 중이라고 가정해봅시다. 쇼핑을 위해 사이트에 접속했는데 상품의 상세 정보의 로딩 시간이 길다면, 어떻게 하시겠습니까? 대부분은 사이트를 이탈할 것입니다.

만약 여러분이 쇼핑 사이트를 운영하고 있다고 가정해봅시다. 이벤트를 통해 높은 매출을 기록하려고 합니다. 대대적으로 광고, 홍보를 진행했고 많은 사용자들의 유입이 예상됩니다. 이때 여러분은 무엇을 보완하시겠습니까? 서버가 다운되지 않고 많은 트래픽을 견딜 수 있도록 안정성을 강화해야 할 것입니다. 이때 MSA 도입을 생각하게 되는 것입니다.

대부분의 기업용 애플리케이션은 하나의 큰 서비스 형태로 개발되어 왔습니다. 이를 모놀리틱아키텍처(Monolithic Architecture)라고 부르는데, 구조가 단순하기 때문에 개발이 용이하고 END-TO-END 테스트가 용이하다는 장점이 있습니다. 하지만 시스템의 규모가 커질수록 더욱 복잡해지고 이에 따라 코드의 이해와 분석이 어려워집니다. 또, 작은 수정에도 전체를 빌드/배포해야 한다는 단점이 존재합니다.

MSA는 마이크로 서비스 아키텍처(Micro Service Architecture)로, 클라우드 상에서 하나의 작은 서비스 단위로 개발하여 변경이나 조합, 재활용이 가능하도록 구성한 아키텍처입니다. 서비스의 개발이 빠르고 출시 시간이 단축되며 서비스별로 독립적인 배포가 가능하다는 장점이 있습니다. 이 때문에 서비스의 운영 또한 안정적으로 유지 가능합니다. 다만, 트랜잭션의 유지가 어렵고 API 관리의 중요성이 증가된다는 단점도 분명 존재합니다.

앞서 이야기한바와 같이 MSA는 하나의 작은 서비스로 개발되었기 때문에 독립된 하나의 모듈에서 발생한 장애는 바로 수정하여 다시 배포할 수 있습니다. 그렇기 때문에 하나의 모듈에서 생긴 장애는 전체 어플리케이션에 크게 영향을 주지 않습니다. 또 모듈 간의 의존도가 낮아 서로 다른 기술 스택을 사용할 수 있습니다.

MSA의 도입을 마음먹고 나면 언제, 어떻게, 어디서부터 시작해야 할지 막막하기 마련입니다. 우선 MSA 도입의 첫 번째 단계는 MSA 기술 컨설팅입니다. 서비스의 현황 그리고 이슈와 향후 방향성 등을 종합 검토하면서 MSA 원칙에 부합하는 고도화 방안과 로드맵을 제시받을 수 있습니다. 즉, 우리의 서비스에 MSA를 도입하는 것이 맞는지, 아니면 굳이 도입하지 않아도 괜찮은 것인지를 검토하는 것입니다.

그 이후 분석/설계 단계, 개발/구축 단계, 검증/운영 단계를 거쳐 MSA가 도입됩니다.

MSA 도입 과정은 결코 쉽지 않습니다. 기존 모놀리틱 아키텍처에서 MSA로 혹은 SOA에서 MSA로 시스템 간의 의존성을 분리하는 작업은 쉬운 작업이 아닙니다. 올바르게 분리되지 않으면 서비스 환경에 치명적일 수 있죠.

OSC Korea의 OpenMSA™는 오픈 소스 기반의 MSA, 컨테이너 운영 플랫폼입니다. 다수의 구축 사례를 통해 검증된 오프소스로 구성하여 설계에서 검증에 이르기까지 최단 시간에 구축이 가능하며, 표준 기술 지원 및 SLA 기반의 엔터프라이즈 기술 지원 서비스를 제공할 수 있습니다.

아래 추가적인 정보들을 살펴보며, 빠르고 안정적인 MSA 도입을 가능하게 하는 OpenMSA™에 대해 알아보세요

Reference

https://www.samsungsds.com/kr/insights/msa.html

BENEFITS
2022.04.28 MSA(Micro Service Architecture)는 무엇이며, 왜 필요할까요?

Latest posts