Seguindo a série de posts que estamos publicando em nosso blog sobre arquitetura Serverless (sem servidor), resolvemos trazer um comparativo dos principais fornecedores desse tipo de tecnologia: Amazon Web Services (AWS), Google Cloud e Azure, da Microsoft.
A ideia é mostrar porque, apesar de prometerem praticamente as mesmas coisas, algumas se destacam no mercado.
Confira em detalhes, a seguir!
Principais diferenças entre a arquitetura Serverless de AWS, Google Cloud e Microsoft Azure
Idioma suportado
O AWS Lambda é melhor do que outros, pois a linguagem de programação é bastante diversificada e o Lambda fornece mais versões e mais tipos de linguagens compatíveis do que outros provedores de arquitetura sem servidor.
Suporte a funções com estado
O AWS Lambda não oferece esse suporte, mas pode acessar os serviços de armazenamento da AWS onde o Azure fornece esse recurso, e o Google Cloud não possui esse elemento até o momento.
Identity and Access Management (IAM) granular
As políticas do Identity and Access Management (IAM) podem ser anexadas ao Lambda. Enquanto o RBAC tem suporte na Assinatura e as Funções estão dentro do Azure. O Google Cloud não divulgou publicamente nada relacionado a isso.
Armazenamento persistente
A AWS usa S3 e DynamoDB para armazenamento persistente sem estado completo, enquanto no ambiente do Azure as variáveis podem ser definidas para que possam ser usadas em funções.
O Azure armazena no armazenamento de blobs.
Já o Google Cloud fornece Cloud Storage, Cloud Datastore, Cloud SQL para o mesmo.
Desdobramento, desenvolvimento
Na AWS, a implantação é feita no formato zip.
O zip é carregado no Lambda/S3. Enquanto no Azure Git, dropbox, visual studio, console Kudu etc. podem ser usados para implantação.
Na CLI do Google Cloud, o upload Zip, o Cloud Storage ou o Source e o editor da Web embutido são usados para essa finalidade.
Número máximo de funções
No AWS Serverless e no Azure Serverless, não há limite para um número máximo de funções, enquanto no Google Cloud o limite é de até 1000 por projeto.
Vista a superioridade da AWS, confira os aplicativos que ela oferece
Os destaques abaixo são os principais aplicativos da computação AWS Serverless:
Aplicativo da Web e back-end
Aplicativos da web sem servidor e back-end podem ser criados usando AWS Lambda, Amazon API Gateway, Amazon S3 e Amazon DynamoDB e ajudariam a lidar com solicitações da web, dispositivos móveis, IoT e chatbots.
Exemplo: Backend móvel para aplicativo de mídia social.
Processamento de dados
Muitas variantes diferentes de sistemas de processamento de dados em tempo real podem ser criadas na AWS Serverless Computing. Pode-se usar o seguinte para processamento de dados.
- AWS Lambda;
- Amazon Kinesis;
- Amazon S3;
- Amazon DynamoDB
Exemplos:
- Criação de miniaturas de imagens;
- Análise de dados de streaming de mídia social;
- Descubra como criar aplicativos sem servidor na AWS;
- Explore os serviços de desenvolvimento de aplicativos sem servidor.
→ Leia também: AWS Serverless: os benefícios da arquitetura sem servidor.
Que tal, conseguimos te mostrar as diferenças entre as arquiteturas Serverless da AWS, Google Cloud e Azure? Para seguir aprendendo sobre o tema, baixe agora o eBook Computação sem Servidor!