DevGuideTK
← Trilha Backend

Teorema CAP e consistência

A escolha obrigatória entre consistência e disponibilidade quando a rede se divide, e os níveis de consistência entre os dois extremos.

O teorema CAP diz que, quando a rede entre as cópias de um dado falha, o sistema precisa escolher entre responder com um dado possivelmente velho ou recusar a resposta.

Todo sistema com mais de uma cópia dos dados, como réplicas de leitura, cache ou vários data centers, enfrenta essa escolha. Ela decide o que o usuário vê logo depois de salvar algo.

  • Falhas de rede vão acontecer; a pergunta é o que fazer quando acontecerem.
  • Consistência forte significa que todo mundo vê a última escrita.
  • Disponibilidade significa que toda requisição recebe resposta.
  • Mesmo sem falhas, ler de uma réplica pode trazer um dado velho.
  • A escolha pode ser diferente para cada tipo de dado do mesmo sistema.