Git Bisect: Como Encontrar o Commit que Quebrou seu Código

A suíte de testes está verde há três semanas. Hoje o npm test falha em uma asserção que não tem nada a ver com o que você acabou de mudar, e git log v1.4.0..HEAD mostra 340 commits de quatro pessoas desde o último release que alguém tinha certeza de que funcionava. Ler cada diff custa um dia inteiro. Fazer checkout de commits ao acaso é mais rápido, mas ainda não é um plano. ...

22 de setembro de 2026 · 6 minutos · 1206 palavras · SpaghettiCoder

O Que É DNS e Como Funciona a Resolução de Nomes

O que o DNS realmente faz em cada requisição Toda requisição para example.com começa com uma busca que não tem nada a ver com sua aplicação: algo precisa transformar aquele nome em um endereço IP antes que um único pacote TCP saia da máquina. Essa tradução é o DNS, o Domain Name System, e ela acontece em toda requisição, seja o cliente um navegador, o curl, ou um serviço de backend chamando outro pelo hostname. ...

21 de setembro de 2026 · 8 minutos · 1564 palavras · SpaghettiCoder

O Que É TLS e Como Funciona a Criptografia HTTPS

O que o TLS realmente protege em uma conexão HTTPS Carregue uma página por http:// puro em uma rede que você não controla, um aeroporto ou o roteador de uma cafeteria, e tudo o que você envia viaja como texto legível. O caminho da URL, os cookies, os campos do formulário, a senha em um POST de login: qualquer pessoa nessa rede com um sniffer de pacotes lê tudo isso ao passar. TLS, Transport Layer Security, é o protocolo que impede isso. Ele fica entre o TCP e o protocolo de aplicação, então quando o HTTP começa a falar, a conexão já está criptografada e vinculada a uma identidade de servidor verificada. HTTPS é o HTTP rodando sobre essa conexão em vez de uma em texto plano. ...

20 de setembro de 2026 · 11 minutos · 2172 palavras · SpaghettiCoder

O Que É uma Fila de Mensagens e Como Usar

Um endpoint de checkout que redimensiona a imagem de um produto, envia um email de confirmação e atualiza um mecanismo de recomendação antes de responder com 200 OK é tão rápido quanto sua etapa mais lenta. Se uma delas der timeout, a requisição inteira falha. Uma fila de mensagens permite que o endpoint entregue esse trabalho como mensagens e responda na hora, enquanto workers separados as processam no próprio ritmo. ...

18 de setembro de 2026 · 7 minutos · 1382 palavras · SpaghettiCoder

O Que É Terraform e Como Funciona o Infrastructure as Code

Todo recurso de cloud que você já criou clicando em um console web (uma VM, um load balancer, um registro DNS) também pode ser descrito em um arquivo de texto e criado com um único comando. O arquivo vive no git, passa por uma pull request e reproduz o mesmo setup em uma segunda conta sem que ninguém precise lembrar quais das nove configurações foram alteradas na mão. É isso que o Terraform faz. ...

17 de setembro de 2026 · 8 minutos · 1615 palavras · SpaghettiCoder

Como Funciona o Cache Redis e Como Usá-lo

Uma query que leva 200ms no seu banco de dados ainda leva 200ms na milionésima vez que alguém a executa, e cada uma dessas execuções disputa as mesmas conexões, o mesmo I/O de disco e a mesma CPU. O Redis mantém a resposta em memória, num servidor que não faz mais nada, então a milionésima leitura custa uma ida e volta de rede em vez de um plano de query. ...

15 de setembro de 2026 · 7 minutos · 1491 palavras · SpaghettiCoder

O Que É um Reverse Proxy e Como Funciona

O que fica entre o navegador e sua app Aponte o navegador para example.com e a requisição nunca toca diretamente no processo que executa seu código. Ela encontra primeiro outra coisa: um servidor que lê a requisição, decide qual backend deve responder, a encaminha para lá e devolve a resposta como se a tivesse produzido ele mesmo. Esse servidor é um reverse proxy. Nginx, Caddy, Traefik e HAProxy fazem esse trabalho, assim como o load balancer que fica na frente de um cluster Kubernetes. O esquema nunca muda: os clientes falam com o proxy e com mais nada. Os servidores reais ficam atrás, em qualquer quantidade e onde quer que rodem. ...

14 de setembro de 2026 · 7 minutos · 1340 palavras · SpaghettiCoder

Git Rebase vs Merge: diferenças e quando usar cada um

Você dá pull na última versão da main e o Git para com CONFLICT (content): Merge conflict in checkout.js. Você resolve o conflito e o log agora mostra um commit chamado Merge branch 'main' into feature/checkout, acima dos três commits que você realmente escreveu. Quatro commits, uma única mudança real. Um colega que ler esse histórico no mês seguinte não consegue saber qual é qual. git merge e git rebase respondem à mesma pergunta: como eu atualizo meu branch com as mudanças feitas em outro lugar. Eles deixam rastros muito diferentes, e escolher o errado num branch compartilhado causa dano real. ...

13 de setembro de 2026 · 8 minutos · 1676 palavras · SpaghettiCoder

Construir e Publicar uma Imagem Docker com GitHub Actions

docker build && docker push a partir do seu computador funciona até outra pessoa precisar publicar a mesma imagem, ou até isso precisar acontecer a cada merge sem você estar no teclado. O GitHub Actions executa essa build nos runners do GitHub, marca a tag da imagem de acordo com o que disparou o workflow e a publica em um registry de onde a sua etapa de deploy pode fazer pull. Nada roda localmente. ...

11 de setembro de 2026 · 8 minutos · 1665 palavras · SpaghettiCoder

Pod vs Deployment no Kubernetes: a Diferença

Execute kubectl run nginx --image=nginx:1.27 e o Kubernetes cria exatamente um Pod chamado nginx. Apague-o com kubectl delete pod nginx e ele some de vez — ninguém percebe, ninguém o substitui. Um Pod é a menor unidade implantável no Kubernetes: um ou mais containers que compartilham um namespace de rede e um conjunto de volumes, agendados juntos em um único Node. Esse Pod isolado é um beco sem saída em produção. Se o container dentro dele travar, o kubelet o reinicia no mesmo lugar. Se o Node reiniciar, ou alguém apagar o Pod, nada o recria. Nada guarda a memória de que ele deveria existir. ...

10 de setembro de 2026 · 5 minutos · 1012 palavras · SpaghettiCoder