대부분의 초기에는 모놀리틱 아키텍쳐로 이루어진 구조로 서비스를 구성하고 있었다.
이러한 방식은 어플리케이션 아키텍쳐가 간단하다는 장점이 있지만 특정 서비스에 변경이 있으면 변경 서비스를 포함하고 있는 모든 코드나 구조를 수정해야하는 단점이 발생한다.
이로인해 관리와 운영의 효율성을 높이기 위해 MSA(마이크로 서비스 아키텍쳐, 이하 MSA) 구조라는 방식으로 변해가고 있는 추세이다.
변해가고 있는 구조에 따라 불편한 점이 발생하게 되는데 각 서비스들이 작게 나눠지면서 서로간의 통신, interface의 필요성이 느껴지게 된다.
< 모놀리식 / 마이크로서비스 아키텍쳐>
그 불편함을 해결하기위해 떠오르고 있는것이 API Gateway이다.
API Gateway는 API서버 앞단에서 모든 API 서버들의 엔드포인트를 단일화하여 묶어주고 API에 대한 인증과 인가 기능, 여러 서버로 라우팅 하는 고급기능을 추가로 사용 가능하게 한다.
API 게이트웨이의 시작은 MSA가 SOA(서비스 지향 아키텍쳐)에서 시작한것 처럼 ESB (Enterprise Service Bus)에서 시작되었다.
그래서 ESB의 대부분의 컨셉을 많이 가지고 가는데, ESB의 실패와 단점을 보완해서 만들어진 사상이 API 게이트웨이이다.
ESB가 SOAP/XML 웹서비스 기반의 많은 기능을 가지는 구조라면 API 게이트 웨이는 JSON/REST 기반에 최소한의 기능을 처리하는 경량화된 구조로 되어있다.
<Azure APIM 구조 소개>
클라이언트 애플리케이션의 모든 요청은 앞단의 API 게이트웨이에 도달한 다음, 각 backend 서비스에 전달
API 게이트웨이는 backend 서비스의 외관 역할을 하여 API 공급자는 API 클라이언트들에게 영향을 주지 않고 API 구현을 추상화하고 backend 아키텍처를 이용 및 확장 가능
라우팅, 보안, 제한, 캐싱 및 모니터링을 일관되게 구성
API 게이트웨이 기능
Ref : https://medium.com/transparent-data-eng/best-api-management-tools-2021-c03344dbd63b
Gartner Leaders에서 한국지원이 가능한 곳으로 선정
On-promise 형태 지원도 가능
API management toolsBest ForBussiness SizeDeliveryPricing PlansDeveoloper Portal
Apigee | Monetization tools | Small, Medidum | Proxy, Agent, Hybrid | Evaluation: Free. Team: $500/month. Business: $2500/month |
O |
3Scale | Developer portal | Startups, Small, Medium, & Large |
Proxy, Agent, Hybrid | Pro: $750/month. Enterprise: Please contact the company |
O |
IBM API Management | User-friendly | Enterprise | Proxy, Agent. | Lite: Free. Enterprise: $100/ 100K API calls. Enterprise 25 M: $40/100K API calls thereafter. It has four more plans. |
O |
Akana | Lifecycle management tools. | Enterprise | Proxy, Agent, Hybrid | Free Trial Business: $4000/month. Enterprise: Please contact the company. |
O |
Kong Enterprise | Open source API Gateway | Startups, Small, Medium, & Large |
Proxy | Free. | O |
Ref. https://www.softwaretestinghelp.com/api-management-tools/
대부분의 API Gateway가 기능상 차이가 크지는 않음.
필요한 기능이 있는지 확인하고 플러그인 또는 커스텀이 잘되는지, 검증된 Reference 참고하여 선정하면 될 것으로 보임.
클라우드 서비스 제공 기업이 portal 또는 console이 그래도 타 tool에 비해 잘 되어있음.
FQDN(Fully Qualified Domain Name) (0) | 2021.11.30 |
---|---|
DNS(Domain Name System) (0) | 2021.06.25 |
Linux 네트워크 본딩 (0) | 2020.06.12 |
댓글 영역