80 conceitos que você vai precisar aprender para colocar sistemas em produção
Lista completa dos fundamentos que todo desenvolvedor vai encontrar na prática: deploy, logs, erros, performance e muito mais. Guarde pra consultar quando precisar.
Lista completa dos fundamentos que todo desenvolvedor vai encontrar na prática: deploy, logs, erros, performance e muito mais. Guarde pra consultar quando precisar.
Fila de mensagens é como uma caixa de correio entre sistemas. Um coloca a mensagem, o outro pega quando estiver disponível. Conceito fundamental em sistemas modernos.
Throughput é a capacidade de processamento do seu sistema. Aprenda o que é, como medir e por que é importante entender o limite antes de colocar sistemas em produção.
Kafka é uma plataforma de streaming que processa bilhões de eventos por dia. Aprenda o conceito básico para entender por que ele aparece em tantos sistemas modernos.
Imagine dois caixas tentando usar a mesma impressora ao mesmo tempo. Pode dar confusao. Race condition e exatamente isso na programacao. Aprenda o conceito com exemplos do dia a dia antes de mergulhar no codigo.
Quando uma operacao falha por problema temporario de rede, faz sentido tentar de novo. Isso se chama retry. Aprenda o conceito, por que nao pode tentar infinitas vezes e como fazer isso de forma inteligente.
Uma operacao atomica e aquela que ou acontece por completo ou nao acontece de jeito nenhum. Nada no meio. Isso e fundamental para nao deixar seus dados a metade em caso de erro. Aprenda com exemplos simples.
Cache e guardar informacoes em memoria para nao precisar buscar de novo. Mas o que acontece quando voce tem varios servidores? Cache distribuido resolve isso. Aprenda o conceito antes de se preocupar com a implementacao.
As vezes uma mensagem ou requisicao pode chegar duplicada por causa de falha de rede. Deduplicacao garante que a mesma operacao nao e executada duas vezes. Aprenda o conceito de forma simples e direta.
Uma operacao idempotente pode ser feita varias vezes com o mesmo resultado, sem efeitos indesejados. E um conceito importante para sistemas confiaves. Aprenda com exemplos do mundo real antes de ver o codigo.
Todo sistema pode ter problemas — servidor cair, rede falhar, banco travar. Tolerancia a falhas e a capacidade de continuar funcionando mesmo assim. Aprenda os conceitos basicos e como pensar nisso ao criar sistemas.