Aguarde, carregando...

API Gateway AWS

API Gateway AWS
Luis Carlos Da Silva Santos
Por: Luis Carlos Da Silva Santos
Dia 22/08/2021 10h43

O Amazon API Gateway é um serviço gerenciado que permite que desenvolvedores criem, publiquem, mantenham, monitorem e protejam APIs em qualquer escala com facilidade.

AWS API Gateway

O Amazon API Gateway é um serviço gerenciado que permite que desenvolvedores criem, publiquem, mantenham, monitorem e protejam APIs em qualquer escala com facilidade. APIs agem como a “porta de entrada” para aplicativos acessarem dados, lógica de negócios ou funcionalidade de seus serviços de back-end. Usando o API Gateway, você pode criar APIs do RESTful e APIs do WebSocket que habilitam aplicativos de comunicação bidirecionais em tempo real. O API Gateway dá suporte a cargas de trabalho conteinerizadas e sem servidor, além de aplicativos da web.

O API Gateway administra todas as tarefas envolvidas no recebimento e processamento de até centenas de milhares de chamadas de API simultâneas, inclusive gerenciamento de tráfego, suporte de CORS, controle de autorização e acesso, com fluxo controlado, monitoramento e gerenciamento de versões de API. O API Gateway não tem taxas mínimas ou custos antecipados. Você paga apenas pelas chamadas de API recebidas e pela quantidade transferida de dados de saída. Além disso, com o modelo de definição de preço em camadas do API Gateway, você pode reduzir os custos à medida que seu uso da API é escalado.

API Gateway

O Amazon API Gateway é um serviço gerenciado que permite que desenvolvedores criem, publiquem, mantenham, monitorem, protejam e operem APIs em qualquer escala com facilidade. É um serviço com pagamento conforme o uso que se encarrega de todas as tarefas pesadas comuns envolvidas na execução segura e confiável de APIs em grande escala.

Com a proliferação de dispositivos móveis e a ascensão da Internet das Coisas (IoT), é cada vez mais comum que os aplicativos tenham permissão para acessar sistemas e dados de back-end por meio de APIs. Considerando o grande número de aplicativos que usam APIs e as comunidades de desenvolvedores que dependem delas, cada vez mais tempo e esforços são investidos no desenvolvimento e no gerenciamento de APIs. Para facilitar o uso dessas APIs, o API Gateway pode gerar SDKs cliente para várias linguagens, incluindo JavaScript, iOS e Android.

Suporte a APIs RESTful e WebSocket

Com o API Gateway, você pode criar APIs RESTful usando APIs HTTP (demonstração) ou REST. As APIs HTTP permitem que você crie APIs de alta performance e econômicas que exigem apenas funcionalidade de proxy de API e são otimizadas para cargas de trabalho sem servidor. As APIs REST oferecem funcionalidade de proxy e recursos gerenciamento de APIs em uma única solução. Para criar aplicativos de comunicação bidirecionais em tempo real, como aplicativos de bate-papo e painéis de streaming, você pode usar APIs WebSocket. Para saber mais sobre as APIs RESTful e WebSocket do API Gateway.

Resiliência

O API Gateway ajuda a gerenciar o tráfego para os sistemas de back-end, permitindo definir regras de controle de utilização com base no número de solicitações por segundo para cada método HTTP nas APIs. O API Gateway processa qualquer nível de tráfego recebido por uma API, permitindo que você se concentre na lógica e nos serviços de negócios em vez de na manutenção da infraestrutura. Se você está usando APIs REST, também pode definir um cache com chaves personalizáveis e vida útil em segundos para os dados de API para evitar o acesso aos serviços de back-end em cada solicitação.

Criação e implantação fácil de APIs

Com o API Gateway, você pode criar de maneira rápida e fácil uma API personalizada para seu código executado no AWS Lambda e chamar o código do Lambda por meio da sua API. O API Gateway pode executar código do AWS Lambda em sua conta, iniciar máquinas de estado do AWS Step Functions ou fazer chamadas para o AWS Elastic Beanstalk, o Amazon EC2 ou para web services fora da AWS com endpoints HTTP de acesso público. Usando o console do API Gateway, você pode definir a API REST e seus recursos e métodos associados, gerenciar o ciclo de vida da API, gerar SDKs cliente e visualizar métricas da API.

Monitoramento de operações de API

Após a implantação e o uso de uma API, o API Gateway disponibiliza um painel para monitorar visualmente as chamadas para os serviços. O console do API Gateway é integrado ao Amazon CloudWatch, o que possibilita obter métricas de desempenho de back-end, como chamadas, latência e taxas de erro de APIs. Como o API Gateway usa o CloudWatch para registrar informações de monitoramento, você pode definir alarmes personalizados nas APIs do API Gateway. O API Gateway também pode registrar erros de execução de API no CloudWatch Logs para facilitar a depuração.

Autorização da AWS

Para autorizar e verificar solicitações de API para serviços da AWS, o API Gateway pode ajudar a utilizar a assinatura versão 4 para APIs REST e WebSocket. Com a autenticação da assinatura versão 4, você pode usar o AWS Identity and Access Management (IAM) e as políticas de acesso para autorizar o acesso às APIs e a todos os seus outros recursos na AWS. Você também pode usar funções do AWS Lambda para verificar e autorizar tokens de transmissão, como tokens JWT ou declarações SAML.

Chaves de API para desenvolvedores externos

Se você está usando APIs REST, o API Gateway ajuda a gerenciar o ecossistema de desenvolvedores externos que acessam suas APIs. Você pode criar chaves de API no API Gateway, definir permissões de acesso detalhadas para cada chave de API e distribuí-las a desenvolvedores externos para que acessem suas APIs. Você também pode estabelecer planos que definam controles e limites de cotas de solicitações para cada chave de API individual. O uso de chaves de API é totalmente opcional e deve ser habilitado para cada método.

Geração de SDKs

Se você está usando APIs REST, o API Gateway pode gerar SDKs cliente para diversas plataformas, que podem ser usados para agilizar os testes de novas APIs nos aplicativos e na distribuição de SDKs para desenvolvedores externos. Os SDKs gerados processam chaves de APIs e assinam solicitações usando credenciais da AWS. O API Gateway pode gerar SDKs de clientes para Java, JavaScript, Java para Android, Objective-C ou Swift para iOS e Ruby. Você pode usar a ILC da AWS para gerar e fazer download do SDK de uma API para uma plataforma compatível usando o comando get-sdk.

Gerenciamento do ciclo de vida de APIs

Se você está usando APIs REST, o API Gateway permite executar várias versões da mesma API simultaneamente, possibilitando que os aplicativos continuem a chamar versões anteriores das APIs mesmo após a publicação das versões mais recentes. O API Gateway também ajuda a gerenciar as várias etapas do lançamento de cada versão de API, como alfa, beta e produção. Cada etapa da API pode ser configurada para interagir com endpoints de backend diferentes com base na sua configuração de API. As etapas e versões específicas de uma API podem ser associadas a um nome de domínio personalizado e gerenciadas por meio do API Gateway. O gerenciamento de etapas e de versões permite testar facilmente novas versões de APIs que aprimoram ou adicionam novas funcionalidades a versões anteriores de APIs. Além disso, o gerenciamento garante compatibilidade retroativa à medida que as comunidades de usuários migram para adotar a versão mais recente.

Veja também:

Confira mais artigos relacionados e obtenha ainda mais dicas de controle para suas contas.