Escolher um padrão arquitetura escalável é decisão que define custo, prazo e dor de cabeça futura. Não existe bala de prata: cada padrão resolve um tipo de gargalo e cria outro. Abaixo listo 7 padrões com critérios práticos para você decidir sem achismo.
1. Monolito modular
Comece aqui se seu time tem menos de 5 devs. O monolito modular organiza o código em módulos com fronteiras claras, mas roda como um único deploy. Escala verticalmente (CPU/RAM) antes de partir para horizontal. Um e-commerce com 10 mil acessos diários roda tranquilo em um servidor de R$ 200/mês. O risco é deixar os módulos virarem espaguete: revise as fronteiras a cada trimestre.
2. Microsserviços
Só faz sentido quando times diferentes precisam deployar sem pisar no pé um do outro. Cada serviço tem banco próprio, o que isola falhas mas multiplica a complexidade operacional. Um sistema com 3 serviços já exige orquestração (Kubernetes ou similar) e observabilidade decente. Erro comum: adotar microsserviços cedo demais e gastar mais com infra do que com produto.
3. Event-driven
Serviços conversam por eventos assíncronos, não por chamadas diretas. Isso desacopla picos: um checkout que processa 500 pedidos por minuto não derruba o serviço de nota fiscal. Exige broker (Kafka, RabbitMQ) e idempotência nos consumidores. Se você não sabe lidar com mensagens duplicadas, esse padrão vira fonte de bug.
4. CQRS (Command Query Responsibility Segregation)
Separar leitura de escrita permite otimizar cada lado. Um relatório pesado não trava o cadastro de usuário. O custo é manter dois modelos e sincronizá-los. Vale quando a proporção leitura/escrita é muito desigual, tipo 100:1. Abaixo disso, geralmente é complexidade sem retorno.
5. Sharding
Divide os dados em pedaços por chave (ID de cliente, região). Escala escrita horizontalmente. O problema aparece nas consultas que cruzam shards: viram lentas ou impossíveis. Antes de shardar, esgote índice, cache e read replica. Sharding é o último recurso, não o primeiro.
6. Arquitetura em camadas
Clássica: apresentação, negócio, persistência. Fácil de entender e testar. Escala bem até certo ponto, mas acopla tudo verticalmente. Se sua aplicação tem regras de negócio estáveis, é uma escolha honesta. Só não espere escalar horizontalmente sem refatorar depois.
7. Serverless
Você paga por execução, não por servidor ligado. Escala automaticamente em picos. Ideal para cargas intermitentes: processamento de imagens, webhooks, tarefas agendadas. O risco é o lock-in e o custo imprevisível em cargas constantes. Um serviço que roda 24/7 pode ficar mais caro que uma VM equivalente.
Qual escolher
Monolito modular para começar. Microsserviços quando o time crescer e os deploys travarem. Event-driven para desacoplar picos. CQRS e sharding só quando leitura ou escrita forem gargalo real. Serverless para cargas intermitentes. Antes de gastar, meça: qual recurso satura primeiro? A resposta define o padrão.
FAQ
O que é um padrão de arquitetura escalável?
É uma solução recorrente para permitir que um sistema cresça em usuários, dados ou requisições sem degradar. Exemplos: microsserviços, event-driven, sharding. Cada padrão troca simplicidade por capacidade de escala.
Qual o melhor padrão para começar?
Monolito modular. Ele permite escalar verticalmente com custo baixo e migrar para microsserviços depois. Começar complexo é o erro mais caro que vejo em times pequenos.
Microsserviços sempre escalam melhor?
Não. Eles escalam times e partes do sistema, mas adicionam latência de rede, complexidade de deploy e custo de infra. Para muitos casos, um monolito bem feito escala mais barato.
Quando usar event-driven?
Quando há picos de carga ou necessidade de desacoplar serviços. Um sistema de pedidos que precisa notificar estoque, nota fiscal e entrega se beneficia. Exige idempotência e monitoramento.
Sharding é seguro?
É seguro, mas trabalhoso. Consultas que cruzam shards ficam lentas. Só use depois de esgotar cache, índices e réplicas de leitura.
Serverless vale a pena?
Para cargas intermitentes, sim. Para serviços que rodam o tempo todo, pode sair mais caro que uma VM. Faça a conta antes de migrar.