Diminui a latência em cerca de 10x usando supabase 🚀
Express & Render → Supabase (Cold Start)
https://github.com/avellin0 - https://www.linkedin.com/in/avellin0/
Há algumas semanas voltei a um projeto pessoal e percebi algo que me incomodou bastante,
uma latência alta no login.
Investigando melhor, ficou claro que o problema não era o código, mas sim a infraestrutura.
Eu estava usando:
- Express + TypeScript
- PostgreSQL
- Backend hospedado no Render
O problema?
➡️ Cold start.
A primeira requisição depois de um tempo parado chegava a +40 segundos.
A decisão
Buscando uma alternativa gratuita e mais adequada ao problema, encontrei o Supabase.
Migrei a lógica para:
- Edge Functions
- Integração direta com o banco (usando RLS)
- Menos camadas entre request → resposta
O impacto na prática:
Minhas requisições ficaram cerca de 10x mais rápidas na prática.
esse foi o principal ganho da migração
Antes:
**await fetch('https://extude/verifyAccount', {...})** // ~46s
Depois:
**const { data } = await supabase.functions.invoke('login', {...})** // ~4s
Vantagens que senti
✅ Sem cold start perceptível
✅ Menor latência
✅ Deploy e manutenção mais simples
✅ Auth e banco já integrados
Pontos de atenção
❌ Limitações do runtime das Edge Functions
❌ Menos flexibilidade que um backend tradicional
❌ É preciso pensar bem onde colocar cada regra de negócio
Conclusão
Não existe stack perfeita.
Existe stack coerente com o problema.
Para o que eu precisava, Supabase + Edge Functions fez mais sentido do que manter um backend tradicional rodando no Render
O mais interessante foi perceber como decisões de infraestrutura impactam diretamente a experiência do usuário — mesmo quando o código está “correto”.
Ainda estou aprendendo e ajustando, mas decisões como essa têm me ensinado muito sobre arquitetura, custo e performance — não só sobre código.
Obrigado por vir até aqui!
Sinta-se livre há fazer um comentário
Me siga no GITHUB & Linkedin: