Aqui, pretendo levantar os benefícios na utilização de um API Gateway.
Benefícios
- Evita expor a API para cada micro-serviço
- Não havendo exposição da API consumidora, reduzindo a superfície de ataque potencial
- Abstração dos micro-serviços, tanto na parte de endpoints quanto payload
- Atua como Load Balancer
- Pode gerenciar Black List e White List
- Atua na Autenticação e Autorização de APIs
- Permite a transformação de formatos, manipulação de estruturas e validações de campos
- Pode compor dados, integrando várias APIs (veja o pattern API Composition)
- Pode atuar como BFF – Backend For Frontend, simplificando o payload e reduzindo tráfego
- Permite controle de requisições como Rate Limit
- Mitiga riscos de OWASP
- Permite controle de chamadas, gerando relatórios, importantes para monetização da API
- Monitora e faz tracing das chamadas