Estudos gratuitos da ER Soluções WebVer outros conteúdos grátis
ER Soluções WebEstudos · Designing Data-Intensive Applications

9.1. Falhas parciais, redes e relógios não confiáveis

Sem resposta não diz se o outro morreu; relógios mentem. Projete supondo os dois.

Requisição sem resposta: perdida na ida, nó parado ou resposta perdida na volta
Do lado de quem envia, os três casos parecem iguais.

Resumo

Perguntas-chave

responda de cabeça, depois abra
Por que não dá para distinguir nó morto de rede lenta?
Em ambos os casos a resposta não chega dentro do prazo; o remetente só vê o silêncio.
Qual relógio usar para medir quanto tempo uma operação levou?
O monotônico: ele só avança, enquanto o relógio de parede pode ser ajustado pelo NTP e até voltar.
Como o Spanner lida com incerteza de relógio?
Cada timestamp é um intervalo [mais cedo, mais tarde]; antes de confirmar, a transação espera o intervalo passar para garantir ordem.

Exercícios de fixação

0/5 respondidas
1.
O serviço A chama B e não recebe resposta em 5 s. O que A pode concluir?
2.
Para medir a duração de uma requisição, o código deve usar:
3.
Dois nós gravam a mesma chave com last write wins; o relógio do nó B está 200 ms adiantado. O que pode acontecer?
4.
Por que a latência de rede varia tanto em datacenters?
5.
Um timeout de detecção de falha muito longo resulta em:
Seu progresso fica salvo neste navegador.