마이크로서비스: '마이크로'보다는 '서비스'에 더 집중하기

F5 에코시스템 | 2018년 10월 01일

서비스 지향 아키텍처(SOA)는 거의 10년 전에 사망 선고를 받았습니다. SOA가 쇠퇴한 데에는 네트워크도 영향을 미쳤지만, 이 요인은 거의 논의되지 않았습니다. 서비스 간 지연 시간 때문에 아키텍트들은 재사용을 촉진하고 궁극적으로 조합 가능한 애플리케이션을 구현하는 데 필요한 세분화 수준으로 애플리케이션을 서비스를 완전히 분해할 수 없었습니다.

이제 마이크로서비스 아키텍처(MSA)가 등장합니다. MSA의 원칙은 애플리케이션을 분할하는 주요 기준으로 객체(명사)보다 기능(동사)에 초점을 맞춰 한층 더 세분화할 것을 요구합니다. 이처럼 언뜻 미묘해 보이는 관점의 변화로 인해 서비스는 더욱 세분화됩니다. 어떤 시스템이든 객체보다 기능이 훨씬 더 많기 때문입니다.

네트워크는 준비되었습니다. 물리적 네트워크의 속도와 처리량은 비약적으로 향상되었습니다. 컴퓨팅 성능 역시 무어의 법칙에 따라 발전하면서 네트워크 지연 시간은 거의 문제가 되지 않게 되었습니다.

안타깝게도 그 자리는 커뮤니케이션 지연이 대신하게 될 것입니다.

우리는 마이크로서비스를 배포하는 데 사용되는 컨테이너 환경 내부에 인터넷의 복잡성을 그대로 재현했습니다. 마이크로서비스 자체에는 DNS가 필요하지 않을 수 있지만, 여전히 인터넷을 작동시키는 것과 같은 종류의 이름 기반 확인 방식에 의존합니다. 애플리케이션 태그, 즉 메타데이터는 IP 주소로 변환되어야 합니다. 서비스 레지스트리와 복잡한 IP 테이블 항목은 소형 DNS처럼 작동하여 태그를 주소로 변환하고 서비스 간 통신을 가능하게 합니다.

이 프로세스와 관련된 지연 시간을 더욱 악화시키는 요인은 마이크로서비스와 그에 연결된 컨테이너의 일시적인 특성입니다. 수명이 몇 시간이나 몇 달이 아니라 몇 초 또는 몇 분에 불과하므로 호출할 때마다 이름 확인을 수행해야 합니다. 사실상 컨테이너 환경에서 TTL(Time to Live)은 0입니다.

통신 지연의 가장 큰 원인 중 하나가 이처럼 재현된다는 점을 무시하더라도 TCP와 관련된 지연은 여전히 남습니다. TCP 연결을 설정하거나 종료하는 데는 비용이 들며, 이는 예전부터 지금까지 변함이 없습니다. 이로 인한 지연은 분명 작지만 확실히 누적됩니다. 단일 트랜잭션을 실행하는 데 필요한 각각의 연결, 즉 각각의 마이크로서비스가 지연을 가중하며, 결국 허용 가능한 지연 한계를 넘어서게 됩니다.

HTTP/2는 동작 방식이 크게 달라졌음에도 불구하고 이 문제를 해결하지 못합니다. HTTP/2는 동일한 연결을 통해 여러 객체를 쉽게 전송할 수 있도록 설계되어 웹 페이지나 웹 기반 애플리케이션처럼 여러 객체로 구성된 콘텐츠의 지연 시간을 줄여 줍니다. 이상적인 마이크로서비스 설계에서는 각 서비스가 하나의 응답을 반환합니다. 이미 설정된 연결을 통해 여러 요청을 전송하면 통신 오버헤드를 확실히 줄일 수 있지만, 여러 요청이 서로 독립된 여러 서비스에 분산되는 시스템에서는 그렇게 할 수 없습니다.

따라서 문제는 네트워크 지연 시간이 아니라 통신 지연 시간입니다. 연결 수는 여전히 중요하며, 웹 기반의 다중 트랜잭션 통신 성능을 향상하도록 설계된 프로토콜의 개선 사항은 여러 서비스에 걸친 트랜잭션에는 도움이 되지 않습니다.

그 결과가 바로 SOMA, 즉 서비스 지향 마이크로 아키텍처입니다. 이는 서비스 지향 아키텍처와 마이크로서비스 아키텍처가 기묘하게 결합된 형태로, 어디까지가 한쪽이고 어디서부터 다른 쪽인지 구분하기 어렵습니다. 애플리케이션을 기능 기반의 구성 서비스로 분해하는 작업은 통신 지연 시간과 궁극적으로는 코드베이스의 지속 가능성에 의해 제약을 받습니다. 네트워크 기술의 발전으로 합리적으로 분해할 수 있는 세분화 수준이 높아진 것은 분명하지만, 이러한 제약이 사라진 것은 아닙니다. 또 다른 요인은 애플리케이션에 포함된 함수의 수가 객체보다 몇 자릿수나 많다는 점입니다. 이 때문에 순수한 마이크로서비스 아키텍처로 설계된 애플리케이션을 관리하는 일은 애플리케이션 개발자는 물론 네트워크 운영 담당자에게도 상당한 운영상의 악몽이 됩니다. 통신 지연 시간에서 비롯되는 본질적인 문제까지 더해지면서, 조직들은 진정한 함수 지향 마이크로서비스 대신 객체 지향 마이크로서비스를 점점 더 많이 개발하고 있습니다.

궁극적으로 이것이 애플리케이션이 전통적인 3계층 아키텍처를 넘어 분해되기는 하지만, 기능 기반 분해를 충실히 구현할 정도까지는 나아가지 않는 이유입니다.

연결 기반(TCP) 통신에 내재된 지연 문제를 새로운 기술로 해결하거나 시스템 수준의 구현을 집중적으로 개선하지 않는 한, 우리는 계속해서 '마이크로'보다는 '서비스'에 더 가까운 마이크로서비스 아키텍처에 제약받게 될 것입니다.

공유
태그: 2018

작성자 소개

Lori Mac Vittie
Lori Mac Vittie수석 엔지니어 겸 최고 에반젤리스트 | F5

Lori MacVittie는 F5 CTO 오피스의 수석 엔지니어이자 최고 에반젤리스트로, 애플리케이션 딜리버리, 자동화 전략 및 인프라 분야에서 깊이 있는 전문성을 보유하고 있습니다. AI 에이전트를 위한 가드레일을 정의하고, 취약한 멀티클라우드 아키텍처를 분석하며, 확장 가능한 시스템의 한계를 탐구하는 등 복잡한 문제를 명확하게 풀어내는 것으로 잘 알려져 있습니다. 애플리케이션 개발, IT 아키텍처, 네트워크 및 시스템 운영 전반에 걸쳐 30년 이상의 업계 경험을 쌓았습니다. F5에 합류하기 전에는 수상 경력이 있는 기술 편집자로 활동했습니다. MacVittie는 컴퓨터 과학 석사 학위를 보유하고 있으며, 보안, 클라우드 및 엔터프라이즈 아키텍처 분야를 아우르는 다수의 저서를 집필한 작가입니다. 또한 보드게임과 비디오 게임을 열정적으로 즐기며, 치즈에 대해서는 거리낌 없이 확고한 견해를 갖고 있습니다.

Lori Mac Vittie의 다른 블로그 게시물

관련 블로그 게시물

AI 시대의 새로운 애플리케이션 제공 원칙으로 복잡성 극복하기
F5 에코시스템 | 2025. 02. 20.

AI 시대의 새로운 애플리케이션 제공 원칙으로 복잡성 극복하기

보안, 일관성, 완전 자동화에 중점을 둔 애플리케이션 제공의 새로운 6가지 원칙을 도입하여 복잡성 없이 하이브리드 멀티클라우드의 유연성을 누리세요.

디지털 혁신을 가속화하는 6가지 기술 역량
F5 에코시스템 | 2023. 01. 05.

디지털 혁신을 가속화하는 6가지 기술 역량

오늘날의 엔터프라이즈 아키텍처에는 기술 변화를 주도하는 데 핵심적인 민첩성, 확장성, 보안 및 관찰 가능성이 부족하지만, 이 여섯 가지 핵심 역량은 기업이 디지털 혁신 전반에 걸쳐 위험과 과제를 관리하는 데 도움이 될 것입니다.

하이브리드 근무가 ID 중심 보안으로의 전환을 이끌고 있습니다
F5 에코시스템 | 2021. 08. 16.

하이브리드 근무가 ID 중심 보안으로의 전환을 이끌고 있습니다

자동화와 디지털화의 폭발적인 성장에 하이브리드 근무 모델로의 전환 추세가 더해지면서, IP 기반 보안에서 벗어나 ID 기반 액세스 전략으로 전환하는 움직임이 더욱 가속화될 것입니다.

관점의 현대화: 애플리케이션에서 경험으로
F5 에코시스템 | 2021. 04. 05.

관점의 현대화: 애플리케이션에서 경험으로

그리스와 로마의 신들처럼, 여러 신화에서도 동일한 존재가 다양한 모습으로 나타나는 것을 볼 수 있습니다. 본질적으로 각각의 화신은 기존 존재가 새로운 얼굴로 드러난 것입니다. 디지털 세계에서도 이와 비슷한 양상이 나타납니다. 우리가 ‘애플리케이션’이라고 부르는 것들은 흔히 기존 기능이 새로운 형태로 구현된 것이라 볼 수 있습니다.

코로나19 이후 기업 결제의 디지털 전환
F5 에코시스템 | 2020. 06. 01.

코로나19 이후 기업 결제의 디지털 전환

디지털 결제는 과거의 현금만큼이나 보편화되었습니다. 코로나19 팬데믹으로 인한 봉쇄 조치는 소비자의 디지털 결제 서비스 의존도를 더욱 빠르게 높였습니다. 기업의 디지털 결제 도입 역시 가속화되었습니다. 대중을 상대로 영업하든 하지 않든 기업에는 여전히 지급해야 할 대금과 받아야 할 대금이 있기 때문입니다.

공급망 해킹과 보안에서 하드웨어의 역할
F5 에코시스템 | 2018. 10. 08.

공급망 해킹과 보안에서 하드웨어의 역할

수석 아키텍트 Dave Schmitt와 CTO 오피스가 최근 Bloomberg의 Super Micro 관련 기사를 계기로 하드웨어 보안 전문성의 중요성을 되짚어봅니다. 또한 이 글에서는 시스템이 안전하게 보호되고 있는지 확인하기 위해 공급업체에 물어봐야 할 질문도 소개합니다.