Como Calcular o Custo de Implantação de um API Gateway Open-Source na AWS?
March 11, 2024
Escolhendo entre um Gateway de API Open-Source e o Amazon API Gateway
Quando os desenvolvedores enfrentam a decisão de usar um serviço totalmente gerenciado como o Amazon API Gateway ou uma solução de gateway de API open-source, vários fatores cruciais entram em jogo. Este artigo examina essas considerações para ajudar os profissionais de engenharia a fazer uma escolha informada.
-
Ambientes Multi-Cloud e Híbridos: O Amazon API Gateway se destaca na integração com outros serviços da AWS, como o Lambda, mas está fortemente acoplado ao ecossistema da AWS. Por outro lado, os gateways open-source oferecem maior flexibilidade, permitindo a implantação em GCP, Azure, nuvens privadas ou ambientes híbridos.
-
Necessidades de Personalização Extensiva: Para projetos que exigem funcionalidades de API altamente personalizadas, além do escopo do Amazon API Gateway, as soluções open-source oferecem maior controle e a capacidade de personalizar os gateways para atender a requisitos específicos.
-
Alto Volume de Solicitações de API e Custos: À medida que o tráfego de API cresce, o custo do Amazon API Gateway pode se tornar significativo. Em contraste, os gateways open-source podem ser uma opção mais econômica, especialmente para cenários de alto tráfego.
-
Otimização de Desempenho e Latência: As opções open-source oferecem maior controle sobre o desempenho e a latência. Os engenheiros podem avaliar diretamente e selecionar gateways open-source otimizados (por exemplo, Apache APISIX, Kong, Envoy, Tyk) para atender às suas aplicações.
Embora o Amazon API Gateway ofereça uma solução conveniente e bem integrada dentro do ecossistema da AWS, as alternativas open-source proporcionam maior flexibilidade, personalização e custos mais baixos, sendo particularmente adequadas para casos de uso complexos ou de alto tráfego.
Fatores a Considerar no Cálculo de Custos
O gateway de API desempenha um papel crucial no gerenciamento do tráfego entre aplicações clientes e serviços de backend, atuando como middleware com dois componentes principais: o plano de dados e o plano de controle.
Plano de Dados: Escalonamento com o Tráfego
O plano de dados, responsável por lidar com as solicitações de API recebidas, realiza tarefas como roteamento, autenticação e transformação de dados, essenciais para garantir o funcionamento suave do sistema. À medida que o volume de chamadas de API aumenta, o plano de dados requer mais recursos de computação para manter o desempenho ideal. Portanto, estimar com precisão o volume de chamadas de API é crucial para determinar o número de instâncias do plano de dados necessárias para garantir que o sistema possa lidar efetivamente com as solicitações e manter alta disponibilidade.
Plano de Controle: Planejamento para Alta Disponibilidade
O plano de controle atua como o centro do gateway de API, gerenciando configurações e políticas, e orientando como o plano de dados processa as solicitações. Diferente do plano de dados, os requisitos de recursos do plano de controle não estão diretamente relacionados ao volume de chamadas de API. No entanto, garantir a alta disponibilidade do plano de controle é crucial. Portanto, os usuários precisam planejar a alocação de recursos do plano de controle com base nos níveis de redundância desejados e nos requisitos de tempo de atividade.
Custos de Monitoramento e Registro
-
Amazon API Gateway: Integrado ao AWS CloudWatch, oferece funcionalidades de monitoramento e registro que incorrem em custos adicionais. Ao considerar o custo total do Amazon API Gateway, é essencial avaliar os requisitos de monitoramento e registro.
-
Gateway de API Open-Source: As soluções de monitoramento e registro geralmente precisam ser consideradas separadamente. Opções econômicas como Prometheus e Grafana podem ser consideradas, ou os usuários podem optar por serviços de gerenciamento de logs gerenciados oferecidos por provedores de nuvem.
Exemplo de Estimativa de Custos: Estimando Custos para Lidar com 10 Bilhões de Solicitações de API
Usando o Amazon API Gateway
Vamos estimar o custo mensal de lidar com 10 bilhões de solicitações de API com o Amazon API Gateway. Observe que os seguintes valores são estimativas, e os custos reais podem variar com base em configurações específicas e padrões de uso.
Suposições:
- Número de solicitações de API por mês: 10 bilhões
- Tamanho médio da carga útil de solicitação/resposta: 1 KB (1.024 bytes)
No cenário acima, o custo mensal é de $9.030.
Usando o Gateway de API Open-Source Apache APISIX
Supondo 20 dias por mês, com 12 horas de execução por dia, vamos calcular o número de solicitações que o gateway de API precisa para lidar com essas 10 bilhões de chamadas de API.
10000000000 / 20.0 / 12 / 3600 = 11574.074074074073
O cálculo mostra que aproximadamente 11.000 solicitações de API precisam ser processadas por segundo. Podemos empregar dois planos de dados, cada um configurado com 4 vCPUs.
11574.074074074073 / 4 / 2 = 1446.7592592592591
Neste cenário, cada CPU processa aproximadamente 1400 solicitações de API por segundo, o que é uma tarefa fácil para um gateway de API como o Apache APISIX, que pode lidar com dezenas de milhares de solicitações por segundo.
Além disso, os mesmos recursos de computação são alocados para o plano de controle.
O custo mensal é de $195.06.
Ao comparar os custos de lidar com 10 bilhões de solicitações entre o Amazon API Gateway e o gateway de API open-source, a proporção é 9030 / 195.06 = 46.29344816979391, indicando que o custo de recursos em nuvem do Amazon API Gateway é aproximadamente 46 vezes maior que o do gateway de API open-source.
No entanto, usar um gateway de API open-source não elimina os custos de software. Os engenheiros também precisam considerar os custos de atualizações, manutenção, bem como a compra de suporte técnico e produtos comerciais.
Conclusão
Ao comparar o Amazon API Gateway e o gateway de API open-source Apache APISIX por meio de exemplos práticos, descobrimos que os gateways de API open-source podem reduzir significativamente os custos de software empresarial. Embora o Amazon API Gateway ofereça uma solução conveniente e bem integrada dentro do ecossistema da AWS, as alternativas open-source se destacam em flexibilidade, personalização e custo-benefício, sendo particularmente adequadas para cenários de uso complexos ou de alto tráfego.