Rolou um workshop de mão na massa com o Danilo Sampaio e o Virgo construindo uma API de encurtador de URLs em Laravel do zero até uma infraestrutura de produção na AWS, testando ao vivo até onde ela aguenta antes de quebrar.
Destaques
- Construção da API: login manual com Sanctum (token, sem Breezy porque é stateful/SPA), rota
storeautenticada na API e rotashowno grupo web (porque quem acessa a URL curta é o navegador, não um cliente de API), validação comalpha_num,uniqueemax. - Provisionamento na AWS: RDS MySQL (db.t3.micro, ~US$30/mês) e ElastiCache Redis (0.5 GB), discussão sobre cota padrão de CPU da conta AWS (5, ampliada para 32 depois de pedido explicando o motivo) e a diferença de driver ao conectar em MySQL Aurora.
- Teste de carga com JMeter em cenários crescentes: EC2 t2.micro com Nginx+PHP-FPM aguentando ~350 req/s numa rota estática, caindo para ~140-200 req/s ao bater no banco.
- Cache com Redis usando
Cache::rememberForever()na rota de redirect, comparado ao custo de uma query sem índice viaEXPLAINno MySQL — o ganho real de cache só aparece quando a query é pesada, não numa consulta já indexada. - Escala vertical extrema: instância c5a.8xlarge (32 vCPUs, 64 GB RAM) — e a pegadinha de que o Nginx/PHP-FPM default (
pm.max_children=5) trava o servidor gargalando a CPU sem esgotar a RAM; ajuste manual demax_children(cálculo por RAM disponível / consumo médio por processo) eworker_connectionsdo Nginx destravou o throughput. - Comparação Nginx vs Octane (RoadRunner) na mesma máquina parruda: Octane sustentando throughput muito maior e mais resiliente sob carga, chegando perto de 10 mil req/s antes de estabilizar (limite da infra, não da aplicação).
- AWS Calculator ao vivo para estimar custo mensal de uma infra real trazida por um espectador, mostrando como super-dimensionamento (RDS grande demais) infla a conta de US$1.700 para US$482/mês só ajustando o tamanho do banco.
- Introdução ao Datadog para APM/monitoramento (métricas de CPU, RDS, traces de request, captura de exceptions) como alternativa mais rápida de configurar do que Prometheus+Grafana na mão.
- Fechamento com criação de um launch template (Octane + imagem AMI pronta) como base para o Auto Scaling Group e Load Balancer — gancho para a escala horizontal.
Profundidade técnica
A aula não fica no discurso de "Laravel escala" — ela mostra o gargalo acontecendo na tela (worker saturado, Can't assign requested address no Redis, 502 sob carga) e resolve em tempo real, incluindo o raciocínio de quando NÃO vale a pena aumentar hardware (o RDS não estava gargalando, o problema era processo insuficiente no Nginx). Trade-offs discutidos com honestidade: índice acelera leitura mas deixa insert mais lento; cache introduz risco de dado desatualizado e ainda depende de latência de rede até o serviço de Redis; FrankenPHP foi citado e propositalmente descartado por falta de maturidade em produção (sem integração comprovada com Datadog na época). A régua de profundidade vai de configuração de PHP-FPM até discussão de escala horizontal de Redis (master/replica, failover gerenciado pela AWS) e sharding de banco — reconhecendo que sharding não fazia sentido no volume de dados da demo, mas explicando o conceito para quando fizer sentido.
Faça parte do Clã
Se esse nível de profundidade — configurar PHP-FPM na unha, ler um EXPLAIN, decidir entre escala vertical e horizontal com dado na mão — é o que você quer no seu dia a dia, é exatamente esse o tipo de conteúdo, mentoria e comunidade que rola dentro do Clã Beer and Code. Lá você tem acesso a encontros como esse, discussão técnica direta com quem já levou aplicação Laravel para escala real em produção, e uma rede de devs que não fica na teoria. Bora entrar.
Engenharia de IA virou profissão, e se aprende construindo, não assistindo. O Clã Beer and Code é o ambiente onde isso acontece ao vivo, toda semana: RAG, agentes, observabilidade e LLMOps em projetos reais, ao lado de quem já está em produção. É pago, é assinatura, e é exatamente o ambiente que estes encontros dão uma amostra.
Entrar no Clã