Como reduzir sua fatura de uso de dados da AWS

0
58


Shutterstock/Gorodenkoff

Não é segredo que o preço da AWS é alto e os dados, em particular, são valiosos. A computação pode ser barata, com serviços como funções Lambda e instâncias do EC2, mas se você estiver transferindo muitos dados, terá que pagar por isso. Veja como reduzir essa conta.

Usar a CDN do AWS CloudFront

CloudFront é uma rede de entrega de conteúdo, ou CDN, um serviço que fica na frente do seu site, API ou qualquer outro serviço da web. Ele armazena em cache a saída perto da borda (perto do usuário), o que melhora o desempenho, mas também pode reduzir os custos pagos de várias maneiras.

Em primeiro lugar, o CloudFront tem um nível gratuito muito maior e também é sempre gratuito. Você obtém 1 TB de dados, um terabyte completo, gratuitamente todos os meses. O nível gratuito normal da AWS é de 100 GB, portanto, para pessoas que usam mais de 1 TB, apenas essa alteração economizará US$ 80 por mês.

Para empresas maiores que gastam muito mais do que isso, o CloudFront também tem preços agressivos por GB de dados. Se você comparar os preços do EC2 com os preços do CloudFront, verá que o CloudFront oferece grandes economias em relação aos preços padrão do EC2. Os preços de dados da AWS são escalonados, portanto, para os primeiros 50 TB, você economizará 6%, depois 15% e até 50% de desconto se estiver atingindo petabytes de camadas de dados.

Por fim, o CloudFront também pode economizar dinheiro de outra maneira; Ao reduzir o estresse nos servidores de origem com cache de borda, você acaba precisando de menos servidores de origem. Com uma CDN, os servidores do CloudFront suportarão o peso, o que significa que você pode gastar menos em computação a cada mês.

É importante observar que o CloudFront não é apenas para sites — ele pode ser usado para armazenar em cache qualquer tipo de solicitação da Web, como solicitações GET de alto tráfego para uma API. Mesmo que não esteja armazenado em cache, você ainda pode colocá-lo na frente de sua API para fornecer dados por meio dele, economizando dinheiro no processo.

Usar AWS Lightsail

Em um esforço para competir com provedores de hospedagem mais simples voltados para pessoas comuns, como a Digital Ocean, a AWS criou o Lightsail, que oferece preços simples para instâncias de computação, bancos de dados e redes simples. Essas instâncias são projetadas para executar softwares básicos de hospedagem, como WordPress e NGINX, e são fáceis de configurar com modelos pré-criados.

A parte importante é que cada pacote vem com largura de banda de taxa fixa a uma taxa extremamente barata. A instância de US$ 5, por exemplo, vem com 2 TB de largura de banda, que custa US$ 85 no CloudFront, incluindo 1 TB do nível gratuito.

Escolha seu plano de instância.

Isso é ótimo, mas vem com uma pegadinha:

51.3. Você não pode usar o Amazon Lightsail de maneira a evitar taxas de dados de outros Serviços (por exemplo, tráfego de proxy dos Serviços para a Internet pública ou outros destinos ou processamento excessivo de dados por meio dos Serviços). (CDN) conforme descrito na Documentação), e se você fizer isso, poderemos limitar ou suspender seus serviços de dados ou suspender sua conta.

O que isso significa na prática é que o Lightsail deve operar em sua própria VPC e não conectar serviços externos como EC2 ou S3 a ela com a intenção de usar um proxy para economizar dinheiro. Esta cláusula é vaga, então não está claro se a AWS permite, por exemplo, servir renderização de imagem para objetos do S3 de uma instância do Lightsail, mas se você estiver usando 100% Lightsail, tudo bem.

RELACIONADO: Amazon Lightsail é AWS para pessoas normais

Baixar para serviços externos

Às vezes, existem apenas serviços que podem oferecer um negócio melhor, e a solução é simplesmente não usar a AWS para as coisas que custam mais dinheiro. Você geralmente não está limitado a nenhum provedor de nuvem específico e há muitas maneiras pelas quais pode ser benéfico usar vários serviços ou “várias nuvens”.

Uma coisa que você deve ter em mente é transferir toneladas de dados entre nuvens. Por exemplo, os dados transferidos da AWS para o Google Cloud Platform ou Azure contarão para sua conta de dados, porque ainda são transferidos da AWS pela Internet aberta. Se você não for cuidadoso, as multi-nuvens podem acabar custando mais dinheiro.

Por exemplo, o AWS S3 pode ser caro. Você pensaria que o principal custo seria o armazenamento de dados, mas se você estiver fornecendo conteúdo a partir daí, também estará pagando pelos dados e também por cada tipo de solicitação. Para conteúdo de alto tráfego, isso pode facilmente custar centenas de dólares por mês, pagando quase nada por “armazenamento barato”.

Uma solução para isso é mudar para outro serviço compatível com S3. O S3 tem uma definição de API e outros serviços podem implementá-la, como o Digital Ocean Spaces. O Spaces é uma implementação básica, mas é confiável e muito mais barato que o S3 em termos de custos de dados. Você pode até mesmo hospedar o S3 a partir de seus próprios servidores.

RELACIONADO: Você deve usar uma alternativa do S3 para armazenamento de objetos?

Baixe para servidores dedicados com largura de banda fixa

Com os serviços em nuvem oferecendo a capacidade de criar e destruir centenas de máquinas virtuais à vontade, é fácil esquecer que existe uma solução antiga: comprar um servidor inteiro em um data center.

Muitas empresas oferecem servidores dedicados que não custam cinco centavos para uso de dados. A OVH, o terceiro maior provedor de hospedagem do mundo, vende máquinas que vêm com conexões dedicadas de 500 Mbps à Internet aberta.

Não é elegante e não é a solução de melhor prática, mas se você quiser economizar dinheiro, é sempre uma opção. Você ainda vai querer ter certeza de não transferir muitos dados da AWS para outro servidor.

Você tem hardware local? Usar AWS Direct Connect

Um problema comum para grandes empresas é migrar de hardware local para serviços em nuvem. Às vezes, nem é benéfico migrar tudo o que você pode executar no local, então você geralmente acaba com uma solução híbrida que usa hardware de nuvem para as coisas que economizam mais dinheiro.

No entanto, isso pode custar dinheiro se você estiver transferindo dados entre a AWS e o local, especialmente considerando que essa cobrança não está presente se você estiver usando totalmente um ou outro.

A AWS tem uma solução para isso chamada AWS Direct Connect, que é uma conexão de nível empresarial diretamente com a AWS. Ele ainda cobra pelos dados, mas a US$ 0,02 por GB, é muito menos do que o preço padrão. Também oferece largura de banda dedicada de até 100 Gbps.

No entanto, o Direct Connect não é apenas um serviço que você habilita, ele requer uma conexão física direta real. Isso pode ser feito de duas maneiras: coloque-o em um datacenter do AWS Direct Connect, trabalhe com um parceiro da AWS para configurar uma conexão com seu datacenter ou compre um nó físico de conexão direta.

De qualquer forma, essa opção é especificamente para grandes empresas e não faz sentido econômico, a menos que você tenha muito hardware local e esteja transferindo toneladas de dados.

A solução óbvia: diminuir o uso de dados

Claro, você sempre pode reduzir o uso de dados otimizando o tamanho do que você envia. É importante usar o Gzip e a compactação deflate, assim como compactar o conteúdo da Web veiculado em seus servidores. Qualquer solicitação que sai da AWS custa dinheiro, portanto, minimizar essas solicitações deve ser uma prioridade.

Por exemplo, se você estiver publicando imagens do S3, provavelmente desejará garantir que elas sejam o mais otimizadas possível. Um dos benefícios da AWS é a fácil automação e é bastante fácil configurar o processamento automático de imagens usando as funções do Lambda. Isso pode facilmente reduzir pela metade o tamanho de suas imagens.

RELACIONADO: Como compactar imagens automaticamente no S3 com Lambda

Seja qual for o caso, convém dar uma olhada em sua arquitetura de rede e ver se há alguma maneira de fornecer o mesmo serviço usando menos dados.