System Design: teorema PACELC
O curso trata do teorema PACELC, que completa o CAP com o caso do "senão": sem partição, o sistema escolhe entre latência e consistência. As lições usam como exemplo uma aplicação Rails de nó único, sem partições e com sete decisões desse tipo nos caches. Elas apresentam as quatro classes (PA/EL, PA/EC, PC/EL e PC/EC) e comparam cache por chave com cache por tempo. Depois mostram onde a consistência custa latência, três jeitos de medir a defasagem e como escolher um orçamento de defasagem. Termina com um desafio de código.
O que você vai aprender
- ✓O enunciado do PACELC e por que o caso do "senão" vale para quase toda requisição
- ✓As quatro classes e por que um caminho pelo sistema tem uma classe
- ✓Quando usar cache por chave e quando usar cache por tempo
- ✓Onde a consistência custa latência, e quem espera por ela
- ✓Três jeitos de medir a defasagem, da leitura da configuração à comparação com o valor recalculado
- ✓Quatro perguntas para definir um orçamento de defasagem como decisão de produto
O caso alternativo
O CAP descreve o que acontece durante uma partição de rede. O PACELC acrescenta a frase que falta ao CAP: e no resto do tempo.
Ler a aula completa grátis →Currículo
7 aulasO caso alternativo
O PACELC acrescenta o caso do "senão" ao CAP, e uma aplicação de nó único toma sete decisões desse tipo.
As quatro classes
As quatro classes PA/EL, PA/EC, PC/EL e PC/EC, com exemplos, e por que cada caminho pelo sistema tem sua classe.
Por chave contra por tempo
O cache por chave põe todas as entradas na chave, e o cache por tempo serve para agregados sem versão natural.
Onde consistência custa latência
Cinco lugares onde a consistência custa latência, mostrando que ela se compra com espera e importa saber quem espera.
Medindo a defasagem
Três jeitos de medir a defasagem: ler a configuração, guardar o generated_at no valor e comparar com o valor recalculado.
Escolhendo um orçamento
Um orçamento de defasagem é uma decisão de produto, definida por quatro perguntas e registrada onde engenharia e produto leem.
Juntando tudo
Um resumo do curso, uma pergunta de revisão em três partes e um desafio que classifica um cache pela classe PACELC.