토스는 Gateway 이렇게 씁니다
최준우 토스 · 토스 기술 블로그
AI 핵심 요약
마이크로서비스가 늘면서 각 서비스에 공통 로직을 중복 구현하고 배포하기 어려워지자, 토스는 Spring Cloud Gateway를 중앙 제어 지점으로 활용했습니다. Gateway는 Route의 Predicate와 Filter를 바탕으로 요청을 라우팅하고, 입력값 정제와 Passport 전파, 종단간 암호화 복호화 및 인증·인가를 처리합니다. 또한 Istio와 애플리케이션 레이어의 서킷 브레이커를 함께 활용하고, Elasticsearch·Prometheus·Grafana로 요청과 시스템 상태를 관찰합니다. 공통 기능을 Gateway에 모으면 서비스의 부담을 줄이고 보안과 안정성을 일관되게 관리할 수 있지만, 모든 트래픽이 통과하는 만큼 세밀한 모니터링이 중요하다는 점을 보여줍니다.
- Route는 요청을 구분하는 Predicate와 전·후처리를 수행하는 Filter로 구성한다.
- Passport처럼 인증된 사용자 정보를 요청 흐름에 실어 보내면 서비스마다 유저 API를 반복 호출하는 일을 줄일 수 있다.
- Gateway에서 입력값 정제와 요청 서명 검증을 수행해 악성 입력, 재전송 공격, 만료된 키 사용을 방어할 수 있다.
- 서킷 브레이커는 장애 전파를 막으며, Istio의 호스트 단위 설정과 애플리케이션의 Route·기능 단위 설정을 상황에 맞게 선택한다.
- Gateway는 모든 요청이 지나는 만큼 로그·메트릭·트레이싱을 갖추고 Route와 API 경로별로 관찰해야 한다.
소개
더 안전하고 안정적인 서비스 운영을 위해서 ‘gateway’를 어떻게 사용해야 할까요? 토스의 수많은 마이크로서비스 로직을 공통화하기 위한 gateway 운영 방법에 대해 소개합니다.
비슷한 학습 자료
컨퍼런스 SLASH
토스ㅣSLASH 23 - 토스는 Gateway 이렇게 씁니다
컨퍼런스 SLASH
더 안전하고 안정적인 서비스 운영을 위해서 ‘gateway’를 어떻게 사용해야 할까요? 토스의 수많은 마이크로서비스 로직을 공통화하기 위한 gateway 운영 방법에 대해 소개합니다. 최준우, 오종훈, 김성현 / 토스 Server Developer 발표 자료 👉🏻 https://bit.ly/464i3vk 토스 개발자 컨퍼런스 SLASH에 대한 자세한 정보는 👉🏻 https://bit.ly/43kW3tO 컨퍼런스 및 세션에 대한 문의는 👉🏻 slash@toss.im 토스에 합류하고 싶다면 👉🏻 https://toss.im/career/jobs #gateway #마이크로서비스 #serverdeveloper #토스 #개발자컨퍼런스 #SLASH *본 발표자료의 저작권은 연사에 있으며, 저작권자의 사전 서면 동의 없이 자료의 일부 또는 전부를 이용하거나 배포할 수 없습니다. *또한 해당 자료를 복제하여 SLASH 행사 홈페이지를 제외한 온라인상에 게재하는 행위...
백엔드 네트워크
컨퍼런스 SLASH
토스ㅣSLASH 22 - 은행 앱에도 Service Mesh 도입이 가능한가요?
컨퍼런스 SLASH
토스뱅크에서 안정적으로 서비스를 운영하기 위해 구성한 아키텍처와, 안정성과 빠른 서비스 성장을 위한 MSA, Service Mesh 환경을 어떻게 활용하고 운영하고 있는지 공유합니다. 김동진 / 토스 DevOps Engineer 하성준 / 토스 DevOps Engineer 발표 자료 👉🏻 https://bit.ly/3HlqIxw 토스 개발자 컨퍼런스 SLASH에 대한 자세한 정보는 👉🏻 https://toss.im/slash-22 컨퍼런스 및 세션에 대한 문의는 👉🏻 slash@toss.im #토스 #개발자컨퍼런스 #SLASH
백엔드 데브옵스 · 인프라
컨퍼런스 SLASH
토스ㅣSLASH 21 - 토스 서비스를 구성하는 서버 기술
컨퍼런스 SLASH
Active-Active 데이터센터 운영, Kubernetes와 Istio Service Mesh 운영, API-Gateway, Kafka, Redis, Monitoring Stack 등 토스에서 사용하는 전반적인 기술과 시스템 구성을 공유합니다. 이항령 / 토스 Server Platform Team Leader 토스 개발자 컨퍼런스 SLASH에 대한 자세한 정보는 👉🏻 https://toss.im/slash-21 컨퍼런스 및 세션에 대한 문의는 👉🏻 slash@toss.im #토스 #개발자컨퍼런스 #SLASH
백엔드 데이터베이스 데브옵스 · 인프라
컨퍼런스 우아콘 2022
Microservices Architecture에 관해 이야기하면 왠지 API Gateway를 꼭 사용해야 할 것 같은 느낌이 듭니다. 과연 그럴까요? 왜 함부로 API Gateway를 사용하면 안 되는지, 그래도 사용해야 한다면 언제 사용할지에 대해 이야기를 나눠보려고 합니다. [발표자 소개] 손권남 | 서버개발그룹장 우아한형제들의 서버개발그룹장 역할을 맡고 있습니다. 대형 이커머스 시스템들의 Microservices Architecture 이관하는 작업에 여러번 참여하면서 느꼈던 점들을 공유해보려고 합니다.
백엔드 로드맵 1개에 담김
문서 김영재/조성현