Serverless ou Docker, Qual escolher?

Docker vs Serverless

Vejo muitos desenvolvedores lutando para decidir entre usar ou não usar serverless em seu MVP. A primeira coisa a analisar é se o seu novo projeto não tem limites de hospedagem. Como sempre digo, é essencial entender as trocas que você pode ter. Esteja ciente das trocas e saberá quais respostas você precisa para decidir entre as soluções possíveis. Essa imagem abaixo representa algo simples a ser analisado, o tempo de implementação.

Serverless comparado com Containers, VMs e Servers

Serverless

Tendo a chance de usar serverless, recomendo tentar primeiro. Isso reduzirá a complexidade para lançar seus projetos; a troca aqui é a flexibilidade. É mais difícil replicar o backend em um ambiente local para testar sua infra. É essencial considerar o ponto em que seu aplicativo pode estar preparado para o ambiente. Usando containers, você criaria um ambiente com os requisitos de sua aplicação.

Painel Cloudflare serverless com Shopify Hydrogen.

Containers

Comparando com serverless, os containers são executados de forma mais precisa, não importa onde estejam, o que significa testes locais mais precisos. Durante o desenvolvimento de apps Shopify, senti falta de um container para desenvolver de maneira mais precisa localmente, foi quando apliquei Containers ao meu fluxo de trabalho com desenvolvimento Shopify.

Eu costumo usar um containers via Docker para aplicativos que não são tão simples quanto um micro serviços. Um container permite que você implante em produção o mesmo contêiner em execução em seu ambiente local.

Shopify Hydrogen na Digital Ocean via container Docker

Provavelmente você sabe que existem pontos invisíveis com containers como manutenção, segurança, balanceamento de carga e outras coisas que você precisa monitorar e manter. Em estruturas mais complexas é necessário ter esse nível de complexidade, mas é fundamental ter em mente que você pode ter ainda mais pontos para cuidar se usar uma VM ou montar um servidor próprio.

Há muitos pontos positivos para começar a usar containers; meu favorito é o controle e a liberdade de mudar para qualquer servidor com a mesma infraestrutura. No desenvolvimento do meu curso Shopify Hydrogen, hospedamos o mesmo tema headless em um container Docker usando DigitalOcean, caso se você quiser conferir.

VMs e servidores

Não precisei passar por esses dois tipos de configurações durante o desenvolvimento do curso, mas já tive várias situações que exigiam esse tipo de implementação. Antes de containers ficassem populares, ou serverless existisse.

About me

Picture of Rafael Corrêa Gomes

Rafael Corrêa Gomes