관리 메뉴

IT.FARMER

API Gateway (Application Programming Interface) 본문

Spring/Spring Cloud

API Gateway (Application Programming Interface)

아이티.파머 2021. 7. 21. 19:15
반응형

2021.07.21 - [Spring/Spring Cloud] - Spring Cloud
2021.07.21 - [Spring/Spring Cloud] - Netflix OSS 와 Spring Cloud 의 ecosystem
2021.07.21 - [Spring/Spring Cloud] - spring cloud eureka
2021.07.21 - [Spring/Spring Cloud] - Spring Cloud Gateway, Circuit Breaker and Hystrix with in Eureka
2021.07.21 - [Spring/Spring Cloud] - API Gateway (Application Programming Interface)
2021.07.21 - [Spring/Spring Cloud] - Netflix OSS(eureka, Hystrix , zull, ribbon)
2021.07.21 - [Spring/Spring Cloud] - circuit breaker (hystrix and the resilience4j)

 

API Gateway (Application Programming Interface)

수많은 API 요청을 처리할 인프라 API Gateway

API Gateway 특징

  • 인증및 인가 적용
  • API가 과도화게 사용되진 않는지 체크
  • 이를 모니터링 하기 위한 목적

API Gateway ?

간단히 말해서 API Gateway는 오케스트레이션과 추가된 보안 및 모니터링 기능을 포합한 고급기능을 갖춘 향상된 역방향 프록시 이다. Netflix Zuul, Amazon API Gateway, Apigee 및 Spring Cloud Gateway는 잘알려진 API 게이트워이 구현의 일부이다,

API Gateway를 사용하는 이유

최근 모놀리틱 서비스의 거대한 서비스에서 타이트한 커플링을 끊어내고 무거운서비스에서 가벼운 서비스로 변경됨에따라 MSA 플랫폼으로 바뀌어 나가고 있다. 이는 테스트, 유지보수, 배포관리가 용이해지는 장점도 가지고 있다.

모놀리틱에서 작은 단위의 서비스 분리시키면서 여러가지 서비스가 생겨나게 되는데 끝점(API)이 많짐에 따라 관리가 어려워 진다. API Gateway는 이런 끝점을 한곳으로 모아 관리해주며, 게이트워이를 통하는 모든 API에 인증관리기능을 적용 할 수 있다. 뿐만아니라 사용량 제어, 요청/응답에 대한 변조기능을 플러그인 형태로 제공한다.

모든 클라이언트는 각각의 서비스에 API호출하지 않아도 되며, API Gateway의 끝점으로만 보내면 된다.

또한 API Gateway는 사용자가 설정한 라우팅 정보에 따라 각 엔드포인트 서비스로 클라이언트를 대신하여 요청을 전달하고 응답을 받아주는 프록시 역활도 수행한다.

이처럼 MSA 환경에서는 여러개로 분리된 서비스에대한 하나의 통합된 관리체계가 필요하게 되었고 API Gateway 를 사용(등장)하게 된것이다.

반응형