다섯 살도 알 수 있게 · SRE
API 게이트웨이가 뭐예요?
API 게이트웨이를 손님을 받아 알맞은 창구로 보내는 정문 안내소 이야기로 풀어봤어요.
손님마다 다른 창구로 직접 뛰어다녀요.어디로 가야 할지 몰라 공원 안을 헤매요.
기구도 12개, 창구도 12개 — 어디가 어딘지 몰라요.창구가 많아질수록 손님이 직접 찾기는 더 어려워져요.
안내소 하나가 다 받아서 알맞은 창구로 보내줘요.입구 하나, 신분증 확인 한 번, 길 안내까지 한 번에요.
입구는 하나로다 여기로 들어와요
신분증 확인은 한 번만창구마다 또 안 물어요
어디로 갈지 안내소가 정해요길을 몰라도 돼요
너무 몰리면 먼저 막아요안내소가 먼저 알아채요
들어오는 문은 하나, 나가는 길은 여럿이에요.안내소가 손님을 보고 어느 기구로 보낼지 정해요.
안내소 하나가 고장나면 공원 전체가 막혀요.그래서 안내소도 여러 개 두고 나눠 맡겨요.
한 줄로
API 게이트웨이 = 손님을 받아 신분증을 확인하고, 길을 안내하고, 너무 몰리면 막는 정문 안내소 하나.
요청이 들어오는 단일 진입점(single entry point)으로, 인증(authentication)·인가(authorization)·라우팅(routing)·속도 제한(rate limiting)을 한곳에서 처리해요. 안쪽 창구마다 따로 구현할 걸 안내소 하나가 대신 맡는 셈이에요.
어른들은 이렇게 불러요
- API 게이트웨이
API gateway - 정문 안내소. 모든 요청이 여기를 한 번 거쳐요.
- 인증
Authentication - 신분증을 보여주는 일. 누구인지 확인해요.
- 인가
Authorization - 들어갈 자격이 있는지 보는 일. 누구인지 안 다음, 뭘 할 수 있는지 봐요.
- 라우팅
Routing - 안내소가 길을 알려주는 일. 손님 요청을 알맞은 창구로 보내요.
- 속도 제한
Rate limiting - 한 번에 몇 명까지만 들여보내는 일. 너무 몰리면 안내소가 먼저 막아요. → 자주 묻는 질문 미리 적어둔 메모판
- 단일 진입점
Single entry point - 들어오는 문은 하나뿐. 그래서 거기가 고장나면 다 같이 못 들어가요.
- 로드 밸런서
Load balancer - 안내소를 여러 개 두고 나눠 맡기는 장치. 안내소 하나로는 부족할 때 써요. → 여러 창구로 나누는 교통 정리
- 서비스 메시
Service mesh - 기구들끼리 이야기하는 전용 통로. 안내소는 손님과 기구 사이, 서비스 메시는 기구와 기구 사이예요. → 기구 사이 전용 통로
다음 이야기
기구 사이 전용 통로 →