https://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api
Tag: API
API Gateway vs API Manager
API Gateway
API Gateway cria um ponto único de acesso, filtrando quem acessa suas APIs. Considere um API Gateway como uma ferramenta para redirecionamento e filtragem de tráfego de terceiros.
API Manager
Este tipo de produto de fornece uma camada de gestão para API Gateways. Além de definir o comportamento do API Gateway, o API Manager lida com análises de cada requisição, insight corporativos através das análises, implementação de controle de versão, criação de dashboard de acesso, possibilidade de monetização e etc.
Ainda não ficou claro? Então vamos nos aprofundar um pouco mais.
O que é um API Gateway?
A tradução para o português da palavra “Gateway” é Portão. A nomenclatura não é por acaso, já que este produto de API opera de forma semelhante. Essa Interface de Programação de Aplicação serve para filtrar os tipos de solicitação que vão acontecer com a API.
Essa tecnologia já é adotada por diversas companhias no mundo, e são disponibilizadas por diversas empresas. Veja algumas funções de API Gateway:
- Ponto único de acesso à todas as APIs, se colocando entre suas APIs e seus respectivos usuários.
- Filtragem de dados na entrada, podendo redirecionar o chamado à API para o local correto, baseado nos mais diferentes parâmetros de entrada, e, até mesmo, ignorar a requisição caso seja desejado, sem levar tráfego à sua API. É o sentinela do seu portão.
- Mecanismos de segurança, que incluem autenticação de usuário e logs de acesso.
- Limitação de acesso baseada em usuário, que permite limitar o acesso do usuário a determinado recurso baseado nas mais diversas premissas, como números de requisições no mês ou nos últimos 10 segundos.
Essas funções presentes no API Gateway permitem as mais diversas vantagens para as empresas que os adotam. Um único ponto de acesso, por exemplo, significa uma redução de esforço em administrar as “portas de entrada” dos seus serviços na web, podendo focar seus esforços em único local.
Além disso, a combinação das outras funções do gateway citadas nos tópicos acima, permite que todo esse tratamento seja realizado fora da sua API, reduzindo a complexidade da mesma. Isso proporciona a redução de custos em mantê-las no ar, abrindo portas para o desenvolvimento de ainda mais APIs.
Para reduzir ainda mais o custo de expor diversas APIs no ar é comum que API Gateways unifiquem o acesso a APIs internas, quer sejam oriundas de sistemas legados ou de micro-serviços mais dinâmicos. Para implementar micro-serviços recomendamos a utilização do Docker, sobre o qual você pode saber mais no artigo Por que você precisa adotar Docker agora mesmo.
E o que é um API Manager?
O API Manager é um software que implementa uma camada de gestão sobre um API Gateway (ou mesmo embute dentro de si o API Gateway), incluindo recursos para facilitar o seu gerenciamento e possibilitando a visualização de dados de negócio. Isso proporciona a geração de estatísticas de uso, gerenciamento de ciclo de vida da API, dentre outros vantagens.
Além das funções do Gateway, o API Manager pode oferecer as mais diversas possibilidades com o intuito de alavancar seu conjunto de APIs:
- Insights corporativos das APIs através de Dashboards.
- Controle do ciclo de vida das APIs.
- Prototipação de API, versionamento das APIs.
- Possibilidade de monetização das APIs.