Graceful Shutdown no Kubernetes
Em um ambiente de microserviços, o deploy é um evento constante. No Kubernetes, quando um novo Pod é criado, o antigo deve ser removido. Se o seu serviço de pagamentos está processando uma transaçã...
Em um ambiente de microserviços, o deploy é um evento constante. No Kubernetes, quando um novo Pod é criado, o antigo deve ser removido. Se o seu serviço de pagamentos está processando uma transaçã...
Testar lógica que depende da hora atual (LocalDateTime.now() ou System.currentTimeMillis()) é um pesadelo. Se o seu teste roda às 23:59 e termina às 00:01, ele pode falhar aleatoriamente. Como torn...
Você está escrevendo um teste unitário e precisa simular uma dependência. Você usa o Mockito e cria um… o quê? Um Mock? Um Stub? Muitas vezes usamos o termo “Mock” para tudo, mas na teoria dos test...
O cache é fundamental para performance, mas a memória é finita. Como decidir qual item remover quando o cache está lotado? O algoritmo mais popular é o LRU (Least Recently Used): removemos o item q...
Você começou com 3 microserviços e era fácil. Agora você tem 50. As chamadas entre eles estão gerando timeouts aleatórios, erros em cascata e você não faz ideia de onde está o problema. Bem-vindo a...
O medo de fazer o deploy de uma nova versão e derrubar o sistema é real. O Blue-Green Deployment é uma técnica de liberação (release) que reduz esse risco a quase zero, permitindo que você volte at...
Você já sentiu que seu código está “preso” ao framework? Que trocar o Spring pelo Micronaut ou o MySQL pelo DynamoDB seria um pesadelo? A Arquitetura Hexagonal (ou Ports & Adapters) resolve iss...
Em uma arquitetura de microserviços, as falhas são inevitáveis. Uma API lenta ou um banco de dados fora do ar podem gerar um efeito dominó que derruba todo o seu ecossistema. O Circuit Breaker (Dis...
Você já teve um bug onde os dados pareciam mudar “sozinhos” no meio do seu código? Isso pode ser falta de compreensão sobre os Níveis de Isolamento do SQL. Vamos focar nos dois mais usados: READ CO...
Se sua API retorna listas de dados, você precisa de paginação. Retornar 1 milhão de registros de uma vez vai derrubar seu servidor e travar o cliente. Mas você sabia que o tradicional page=2&si...