18 / 19 Arquitetura de software na prática · 27 min de vídeo · atualizado em 13 out 2026

Estudo de caso: arquitetura backend do Facebook

Use um caso de feed social para discutir leitura, escrita, distribuição e o custo de fan-out.

Fernanda Kipper
Fernanda Kipper
Próxima aula →

O mesmo feed tem caminhos diferentes

Uma publicação precisa ser gravada uma vez, mas pode aparecer no feed de milhares de pessoas. No fan-out on write, o sistema prepara referências para muitos feeds no momento da publicação; ler fica mais simples, mas uma conta muito popular torna a escrita pesada. No fan-out on read, o sistema calcula parte do feed quando a pessoa abre a tela; a escrita é menor, mas a leitura combina mais fontes.

Caminhos de escrita e leitura do feed, com escolha híbrida para contas de grande alcance.
Caminhos de escrita e leitura do feed, com escolha híbrida para contas de grande alcance.

Abrir diagrama em tamanho original

Uma arquitetura híbrida pode pré-calcular a maioria dos feeds e tratar contas de alcance excepcional durante a leitura. Isso é uma troca, não uma solução universal. Atualização quase imediata, custo de armazenamento, frescor dos dados, personalização e tráfego de leitura influenciam a decisão.

O estudo de caso serve para praticar perguntas: qual é a carga dominante? Que atraso é aceitável? Como ordenar itens? O que acontece se uma partição falhar? Não extrapole um desenho conceitual como se fosse descrição completa da infraestrutura interna atual de uma empresa.

Recupere: que padrão de uso favorece preparar o feed na escrita?

Material complementar da Fernanda

  • Caso NotiFly: o problema de fan-out — Compare a distribuição de notificações do caso com a montagem de um feed. Identifique quais custos aumentam quando uma conta tem milhões de seguidores.

Pratique com /aprender

/aprender Compare fan-out on write e fan-out on read para um feed social. Peça que eu preveja o efeito de uma conta muito popular e de um usuário que lê pouco. Depois discuta uma solução híbrida e pergunte quais métricas guiariam a escolha.
A SEGUIR · AULA 19

Evolução de bancos em produção: Database Branching

18 min de vídeo · Entenda branches de banco como ambientes isolados para validar migrações e mudanças de dados.

Ir para a aula 19 →