Comparando os principais provedores de nuvem: AWS, Azure, Google Cloud e outros
Compare AWS, Azure, Google Cloud, Alibaba e Tencent a partir do que você precisa executar, do custo total, do esforço de operação e da possibilidade de migrar.

Comece pelo que você precisa executar. Compare o esforço de operação, o custo e o caminho para migrar para outro provedor antes de escolher onde hospedar seu sistema.
Suponha que uma pequena empresa queira um site com fotografias de produtos e uma lista de pedidos de clientes. Ela precisa de um lugar para executar a aplicação, de outro para armazenar os arquivos de imagem e de um banco de dados que permita consultar e atualizar os pedidos. Comece por essas três tarefas. Elas tornam a comparação entre provedores de nuvem muito mais fácil do que uma lista de participações de mercado.
Nomes diferentes para tarefas conhecidas
Uma máquina virtual é um computador que você configura e opera remotamente. O armazenamento de objetos guarda arquivos, como imagens. Um banco de dados relacional gerenciado armazena registros estruturados, enquanto o provedor assume parte do trabalho de operação. A seguir, estão exemplos do catálogo de cada provedor, não produtos idênticos nem uma classificação.
|
Provedor |
Máquinas virtuais |
Armazenamento de objetos |
Banco de dados relacional gerenciado |
|---|---|---|---|
|
AWS |
Amazon EC2 |
Amazon S3 |
Amazon RDS |
|
Microsoft Azure |
Azure Virtual Machines |
Azure Blob Storage |
Azure Database for PostgreSQL |
|
Google Cloud |
Compute Engine |
Cloud Storage |
Cloud SQL |
|
Alibaba Cloud |
Elastic Compute Service (ECS) |
Object Storage Service (OSS) |
ApsaraDB RDS |
|
Tencent Cloud |
Cloud Virtual Machine (CVM) |
Cloud Object Storage (COS) |
TencentDB for MySQL |
Os nomes e as categorias dos produtos foram extraídos da comparação de serviços entre provedores feita pelo Google, da visão geral do RDS da Alibaba e do catálogo de produtos da Tencent. Os mecanismos de banco de dados, as configurações disponíveis e os recursos compatíveis variam; um serviço MySQL não substitui diretamente o banco de uma aplicação PostgreSQL sem adaptações.
Compare o trabalho que sua equipe realmente teria
Para o site do exemplo, uma opção é alugar máquinas virtuais e instalar a aplicação e o banco de dados por conta própria. Outra é usar um banco de dados gerenciado e um serviço de hospedagem de aplicações. A segunda opção pode eliminar tarefas de operação, mas você ainda precisa entender a configuração, o acesso, a recuperação e os recursos dos quais a aplicação depende.
Comece pelo sistema que você já tem. Qual mecanismo de banco de dados ele usa? Como é implantado? Quais ferramentas a equipe consegue manter? Uma configuração conhecida pode reduzir o trabalho; um serviço desconhecido ainda pode valer a pena se resolver um problema concreto. Deixe esse benefício explícito.
Depois, escolha os locais em que a aplicação precisa funcionar. Teste os tempos de resposta a partir de onde os usuários realmente se conectam e verifique se os serviços e recursos específicos de que você precisa estão disponíveis juntos na região escolhida. A quantidade de regiões que um provedor oferece no mundo não responde a nenhuma dessas duas questões.
Calcule o custo de um mês completo de operação
Use as mesmas premissas para cada candidato: visitas esperadas, horas de computação, arquivos armazenados, tamanho do banco de dados, backups e dados enviados aos usuários. Inclua o suporte, caso a equipe precise dele. Uma máquina virtual barata é apenas uma linha nessa estimativa.
O guia da calculadora de preços da AWS, por exemplo, orienta a criação de uma estimativa a partir de regiões, serviços e premissas de uso, com a possibilidade de adicionar suporte. A estimativa depende dessas informações; ela não é uma promessa sobre o valor da sua conta. Registre as premissas junto com o valor para poder comparar cenários equivalentes.
Em um site com muitas fotografias, o envio de imagens aos visitantes pode pesar mais do que em um pequeno formulário interno. Em um sistema que precisa se recuperar rapidamente, a capacidade adicional do banco de dados e os mecanismos de recuperação também importam. Teste seu próprio padrão de uso, em vez de procurar um provedor que seja o mais barato em qualquer situação.
Teste o caminho de saída antes de se comprometer
Execute uma versão reduzida da mesma aplicação nos provedores pré-selecionados. Envie imagens de exemplo, crie pedidos de teste, exporte os registros e restaure-os em um ambiente de teste separado. Verifique como você substituiria os serviços específicos de cada provedor. Copiar os arquivos é apenas uma parte da migração de uma aplicação.
Registre três coisas: quanto trabalho foi necessário para colocar o sistema em funcionamento, quanto ele custa sob as mesmas premissas de uso e o que é necessário para migrá-lo ou recuperá-lo. Um teste bem-sucedido dá a uma equipe pequena uma base melhor para escolher do que a posição de uma marca em um ranking.
Mantenha a escolha ligada ao seu objetivo
Você não precisa distribuir seu sistema entre várias nuvens apenas para demonstrar independência. Um único serviço bem compreendido pode ser o ponto de partida mais prático. O importante é saber quais responsabilidades você transferiu e se outro arranjo continua sendo viável.
O artigo Modelos de serviço em nuvem explica essa divisão de trabalho. Já Computação de borda e em nuvem examina onde cada tipo de tarefa deve ser executado. Distribuir máquinas entre locais e distribuir o poder de decisão são questões distintas; uma escolha de infraestrutura útil torna ambas mais claras.