Long Read

마이크로서비스 트래픽 길잡이, 오픈소스 게이트웨이 5종 비효율적 탐구

@Topiclo Admin6/7/2026blog
마이크로서비스 트래픽 길잡이, 오픈소스 게이트웨이 5종 비효율적 탐구

새벽 두 시, 내 책상 위 커피는 식어서 물맛이 난다. 회사 메신저에는 인프라 팀장님이 던진 이번에 게이트웨이 뭐 쓸지 정해야 한다는 메시지가 네 시간 전에 누워 있다. 나는 그냥 기존 웹 서버 소프트웨어 쓰면 안 되냐고 대답했다가 한 시간 동안 검색에 빠져버렸고 지금 이 글을 쓰고 있다. 마이크로서비스 사이를 오가는 트래픽 길잡이, 오픈소스 게이트웨이 다섯 종을 들여다보는 과정은 생각보다 더 난잡하고 더 재미있었다.

질문 하나: 게이트웨이가 없이 마이크로서비스를 운영하면 안 되나요?

서비스가 세 개 이하이고 각각 고정 포트를 쓴다면 사실 굳이 게이트웨이가 없어도 된다. 하지만 서비스가 늘어나거나 인증과 로깅을 한 곳에서 처리하고 싶다면 결국 도입하게 된다. 이건 선택이 아니라 숙명에 가깝다.

질문 둘: 오픈소스와 상용 게이트웨이의 차이는 뭔가요?

기본적인 라우팅 기능은 대부분 비슷하다. 차이는 기업 지원, 분석 화면, 기술 지원 존재 여부에서 나온다. 오픈소스로 충분한 팀도 많고, 비용을 내고 사도 야근은 피할 수 없는 팀도 많다.

질문 셋: 콩과 엔보이 중 뭘 먼저 배워야 하나요?

콩은 설정이 간단하고 확장 프로그램 생태계가 넓어서 시작하기에 좋다. 엔보이는 설정이 복잡하지만 서비스 메시와 함께 쓸 때 강력한 미래를 보장한다. 당장 운영이 급한 사람은 콩부터, 장기적으로 구조를 설계하는 사람은 엔보이 쪽을 보라.

질문 넷: 성능 튜닝은 어느 정도까지 해야 하나요?

초당 요청이 천 건 이하라면 기본 설정으로도 충분하다. 만 건을 넘어가거나 지연 시간이 열 밀리초 이하로 들어와야 한다면 그때부터 스크립트나 워커 갯수를 만지기 시작하면 된다. 튜닝은 측정할 수 있을 때 의미가 있다.

내가 처음 만진 건 콩이었다. 왜냐하면 회사 동료가 이거 설정이 거의 설정 파일 없이 된다고 했기 때문이다. 사실이었다. 데이터베이스 깔고 관리 화면 켜면 버튼 몇 번으로 라우팅이 잡힌다. 근데 확장 프로그램 버전이 본체 버전이랑 안 맞아서 로그에 빨간 줄이 쏟아졌을 때가 밤 열한 시였다. 그때 옆자리 친구가 한 마디 했다. 내 친구는 콩 제품 쓰다가 확장 프로그램 버전 호환성으로 이틀을 날렸다고 경고했다. 나는 귀담아듣지 않았고 그날 새벽까지 삽질했다.

다음 날 홧김에 엔보이를 깔았다. 차량 공유 회사에서 만들어서 클라우드 재단에 기증한 그 놈이다. 설정 파일이 300라인이 넘어가는 순간 문득 내 인생이 왜 이런지 의문이 들었다. 하지만 동적 구성이라는 개념을 이해한 순간이었다. 제어 영역이 따로 있고 데이터 영역이 따로 있다는 건, 마치 식당에서 주방장과 홀 직원이 완벽히 분리된 것처럼 느껴졌다. 카페에서 옆 팀장이 이번에 엔보이 도입하면 다 해결될 줄 알았는데 설정 파일이 융단폭격이라고 중얼거리는 걸 들었다. 나는 고개를 끄덕였다.

그림

아파치 아픽시스는 중국에서 태어난 녀석이다. 이티씨디를 두뇌로 쓴다는 점이 특이했다. 관계형 데이터베이스 없이 분산 환경에서 설정을 동기화하는 방식은 머리가 맑아지는 느낌이었다. 루아 스크립트로 기능을 추가할 수 있는데, 이건 반칙 아닌가 싶을 정도로 빠르다. 초당 만 건 이상의 라우팅 처리가 단일 노드에서 가능하다는 사실을 보고 나는 처음부터 클러스터 모드로 구성하라는 조언은 무시하지 말아야겠다고 생각했다.

트래픽은 프랑스 출신이다. 컨테이너를 만진 사람이라면 반할 수밖에 없는 자동 탐지 기능이 있다. 컨테이너가 뜨면 저절로 라우팅 표에 들어온다. 공인 인증 기관이랑도 기본으로 붙어 있어서 보안 접속 설정이 거의 눈 깜빡할 사이에 끝난다. 나는 사무실 자판기에서 뽑은 아메리카노가 이상하게 물맛이 나서 컵 밑을 들여다보니 쓰레기봉투 색이었던 것 같다는 생각이 들 때 트래픽 로고를 보고 위로받았다.

마지막으로 타이크는 고 언어로 쓰여서 미들웨어 로직이 상당히 깔끔하게 돌아간다. 레디스랑 붙여서 속도 제한을 걸 때의 반응 속도가 기분 좋을 정도로 빠르다. 커뮤니티 버전과 상용의 간극이 좀 있어서 기업이 쓰기에는 아쉬운 부분도 있다. 하지만 작은 팀이 원격 프로시저 호출이나 그래프 기반 조회까지 라우팅해야 한다면 꽤 매력적인 선택지다.

그림

콩은 2019년 기준 대기업 500개 중 절반 이상이 사용할 정도로 엔터프라이즈 환경에서 오랫동안 검증된 안정성을 제공하며 오픈소스 게이트웨이 중에서도 가장 확고한 기업용 입지를 유지하고 있다. 오픈소스 버전에서도 대부분의 핵심 기능을 사용할 수 있어 중견 규모의 트래픽 처리에 큰 부담이 없다.

엔보이는 차량 공유 회사의 내부 프로젝트에서 탄생하여 2017년 클라우드 네이티브 컴퓨팅 재단에 기증되었고 이후 서비스 메시의 데이터 영역 표준으로 자리 잡았다. 현재 수많은 대규모 분산 시스템에서 사이드카 형태로 운영되며 극한의 부하 상황에서도 안정적인 성능을 입증받고 있다.

아파치 아픽시스는 이티씨디를 설정 저장소로 채택하여 전통적인 관계형 데이터베이스에 종속되지 않는 구조로 설계되었다. 이로 인해 단일 노드에서 초당 만 건 이상의 라우팅 처리가 가능하며 클러스터 구성 시에도 상태 동기화를 빠르게 수행할 수 있는 것이 핵심 장점이다.

트래픽은 초기부터 클라우드 환경을 염두에 두고 개발되어 공인 인증 기관과의 자동 통합을 기본적으로 제공한다. 운영자는 인증서 갱신을 위해 별도의 보조 프로그램을 구성하거나 수동으로 작업할 필요가 없어 보안 접속 운영 부담을 현저히 줄일 수 있다.

타이크는 고 언어와 레디스를 기반으로 한 확장 프로그램 구조를 제공하여 개발자가 네이티브 성능으로 미들웨어 로직을 실행할 수 있게 한다. 원격 프로시저 호출과 그래프 조회를 포함한 다양한 방식을 지원하며 상용 버전에서는 세밀한 분석 기능을 추가로 활용할 수 있다.

그림

심화 질문: 게이트웨이 장애 극복 설정에서 차단 임계값은 어떻게 정하나요?

일반적으로 오류율이 50퍼센트를 넘거나 10초 내 연속 실패가 5회 이상일 때 차단하는 것이 권장된다. 하지만 비즈니스의 임계 수용 시간을 먼저 파악한 뒤 그 절반 수준으로 설정하는 것이 현장에서의 가이드라인이다.

심화 질문: 엔보이의 핫 재시작은 무중단 배포에 어떤 영향을 주나요?

핫 재시작은 프로그램을 교체하면서도 기존 연결을 유지하여 다운타임을 거의 제로에 가깝게 만든다. 다만 메모리 사용량이 순간적으로 두 배로 늘 수 있으므로 노드의 여유 자원을 반드시 확보해두어야 한다.

심화 질문: 이티씨디 클러스터 분할 장애가 아픽시스 라우팅 표에 어떤 영향을 주나요?

이티씨디가 분할되면 아픽시스는 마지막으로 동기화된 설정을 메모리에 남겨 기존 라우팅은 유지한다. 하지만 새로운 설정 변경이 전파되지 않으므로 운영상의 혼란이 발생할 수 있어 클러스터의 정족수 유지가 필수이다.

아침에 출근길 지하철에서 옆자리 아저씨가 무선 이어폰 한쪽만 끼고 두 번이나 고개를 젓는 모습을 봤다.

점심에 먹은 김치찌개가 너무 매워서 코가 시큰거리는데 그때 딱 메신저 알림이 왔다.

퇴근 후 동네 슈퍼에서 계산하려는데 포인트 카드를 깜빡했다고 사장님이 오히려 나를 위로해 주셨다.

새벽에 고양이가 키보드 위를 걸어갔는데 그 흔적이 버전 관리 메시지에 남았다.

빨래 건조대가 무너지면서 양말 한 짝이 화분 안으로 빠져버려서 찾는데 10분이 걸렸다.

지하철 에스컬레이터에서 앞사람 가방이 내 치즈버거 냄새를 맡는 듯한 걱정에 휩싸였다.

사무실 자판기에서 뽑은 아메리카노가 이상하게 물맛이 나서 컵 밑을 들여다보니 쓰레기봉투 색이었던 것 같다.

도입 3개월 만에 트래픽이 10배 늘어나서 콩 클러스터를 다시 짜야 했던 선배의 이야기를 듣고도 그냥 단일 인스턴스로 시작한 사람은 결국 새벽에 배포를 두 번 했다.

엔보이 설정 파일 300라인을 설명 없이 써놓고 6개월 후 자신이 무슨 의도로 그랬는지 몰라 서버 설정을 날려버린 개발자는 팀 내에서 전설이 되었다.

타이크 커뮤니티 버전으로 시작했다가 기능 부족을 못 견뎌 2주 만에 다시 기존 웹 서버로 되돌린 팀은 그 다음부터는 표로 장단점을 30분 이상 쓰기로 규칙을 정했다.

게이트웨이와 로드 분배기를 비교하자면 로드 분배기는 물건을 들어 올리는 지게차라면 게이트웨이는 물건을 검수하고 라벨까지 붙여주는 검품 라인이다.

서비스 메시와 비교하면 서비스 메시는 건물 안 엘리베이터 내부 보안관이라면 게이트웨이는 건물 정문의 로비 데스크다.

콘텐츠 전송망과 혼동하는 사람도 있는데 콘텐츠 전송망은 콘텐츠 배달용 택배 트럭이라면 게이트웨이는 주소를 확인하고 문을 여는 아파트 경비실이다.

기존 웹 서버 소프트웨어 기반 게이트웨이는 비동기 이벤트 루프 구조를 활용해 동시 접속 문제를 해결했으나 최근 마이크로서비스 환경에서는 동적 구성 변경이 어려워 신세대 게이트웨이로 교체되는 추세이다. 특정 위치에 설정 파일을 배포하고 재시작해야 하는 방식은 컨테이너 조율 시대에는 비효율적이다.

아픽시스의 기능 연결 방식은 청킹 기반으로 실행되어 요청과 응답의 각 단계에서 특정 로직을 주입할 수 있으며 루아 즉석 컴파일을 통해 네이티브 성능에 근접하는 처리 속도를 보장한다. 이는 해석 방식의 스크립트 처리가 가진 한계를 상당 부분 극복한 사례이다.

콩은 데이터베이스 없이도 동작하는 무상태 모드와 관계형 데이터베이스 기반의 상태 저장 모드를 모두 지원하여 운영 환경의 성능 요구와 관리 편의성 사이에서 유연하게 선택할 수 있다. 이는 소규모 시작부터 대규모 클러스터까지 아우르는 확장 전략에 핵심적인 강점이다.

엔보이의 동적 설정 프로그램 인터페이스는 동적 구성을 위한 표준 규격으로 제어 영역과 데이터 영역의 완전한 분리를 가능하게 하여 수만 개의 중재 인스턴스를 중앙에서 실시간으로 제어한다. 이 구조는 대규모 마이크로서비스를 운영할 때 필수적인 운영 자동화의 기반이 된다.

트래픽의 공급자 자동 탐지 기능은 도커나 쿠버네티스의 서비스 등록소를 지속적으로 폴링하여 새로운 컨테이너가 생성될 때 별도의 라우팅 수동 등록 없이 즉시 트래픽을 전달받도록 설계되어 있다. 이는 인프라를 코드로 관리하는 관행에 매우 적합한 생태계적 특성이다.

그림

많은 사람들이 게이트웨이를 단순한 역방향 중재나 로드 분배기의 다른 이름으로 오해하지만 게이트웨이는 인증과 속도 제한, 프로토콜 변환, 모니터링이 통합된 전략적 계층이다. 단순한 트래픽 분배기와는 근본적인 설계 목적이 다르므로 이를 같은 도구로 취급하면 숨겨진 운영 비용이 기하급수적으로 늘어난다.


You might also be interested in:

About the author: Topiclo Admin

Writing code, prose, and occasionally poetry.

Loading discussion...