SlideShare uma empresa Scribd logo
1 de 69
Baixar para ler offline
Algoritmos de consenso:
Paxos vs RAFT
Maycon Viana Bordin
Trabalho Leve 1
𝑃1
𝑃4
𝑃10
𝑃7
𝑃3
𝑃9
𝑃6
𝑃5
𝑃2
𝑃8
𝑃1
𝑃4
𝑃10
𝑃7
𝑃3
𝑃9
𝑃6
𝑃5
𝑃2
𝑃8
𝑥10
𝑥3
𝑥6
𝑥5
𝑃1
𝑃4
𝑃10
𝑃7
𝑃3
𝑃9
𝑃6
𝑃5
𝑃2
𝑃8
𝑥10
𝑥3
𝑥6
𝑥5
| proposers
| acceptors
| learners
#
#
#
#
#
#
#
#
#
#
𝑃1
𝑃4
𝑃10
𝑃7
𝑃3
𝑃9
𝑃6
𝑃5
𝑃2
𝑃8
𝑥10
𝑥3
𝑥6
𝑥5
𝑃1
𝑃4
𝑃10
𝑃7
𝑃3
𝑃9
𝑃6
𝑃5
𝑃2
𝑃8
𝑥10
𝑥3
𝑥6
𝑥5
𝑃1
𝑃4
𝑃10
𝑃7
𝑃3
𝑃9
𝑃6
𝑃5
𝑃2
𝑃8
𝑃1
𝑃4
𝑃10
𝑃7
𝑃3
𝑃9
𝑃6
𝑃5
𝑃2
𝑃8
Um valor é escolhido quando a maioria dos
acceptors o aceitou.
•
𝑚𝑒𝑠𝑠𝑎𝑔𝑒𝑠 = 𝑁𝑎 × 𝑁𝑙
•
•
•
• Proposers podem enviar propostas com
número crescente, fazendo com que nenhum
seja escolhido.
• Solução: escolher um proposer distinto, sendo
ele o único a enviar propostas.
• L. Lamport, “Paxos Made Simple” in ACM
SIGACT News, vol. 32, no. 4, pp. 18–25, 2001.
• McDonald, Angus. “Paxos by Example”.
• Ongaro, Diego, and John Ousterhout. "In
Search of an Understandable Consensus
Algorithm.“
• Johnson, Ben B. “Raft: The Understandable
Distributed Consensus Protocol”.

Mais conteúdo relacionado

Mais de Maycon Viana Bordin

Introdução a Arquitetura Android
Introdução a Arquitetura AndroidIntrodução a Arquitetura Android
Introdução a Arquitetura AndroidMaycon Viana Bordin
 
Desenvolvimento de uma Rede Social Baseada em Geolocalização
Desenvolvimento de uma Rede Social Baseada em GeolocalizaçãoDesenvolvimento de uma Rede Social Baseada em Geolocalização
Desenvolvimento de uma Rede Social Baseada em GeolocalizaçãoMaycon Viana Bordin
 
A Benchmark Suite for Distributed Stream Processing Systems
A Benchmark Suite for Distributed Stream Processing SystemsA Benchmark Suite for Distributed Stream Processing Systems
A Benchmark Suite for Distributed Stream Processing SystemsMaycon Viana Bordin
 
A Benchmark Suite for Distributed Stream Processing Systems
A Benchmark Suite for Distributed Stream Processing SystemsA Benchmark Suite for Distributed Stream Processing Systems
A Benchmark Suite for Distributed Stream Processing SystemsMaycon Viana Bordin
 
Introdução a Programação Android - Aula 5
Introdução a Programação Android - Aula 5Introdução a Programação Android - Aula 5
Introdução a Programação Android - Aula 5Maycon Viana Bordin
 
Introdução a Programação Android - Aula 4
Introdução a Programação Android - Aula 4Introdução a Programação Android - Aula 4
Introdução a Programação Android - Aula 4Maycon Viana Bordin
 
Introdução a Programação Android - Aula 3
Introdução a Programação Android - Aula 3Introdução a Programação Android - Aula 3
Introdução a Programação Android - Aula 3Maycon Viana Bordin
 
Introdução a Programação Android - Aula 2
Introdução a Programação Android - Aula 2Introdução a Programação Android - Aula 2
Introdução a Programação Android - Aula 2Maycon Viana Bordin
 
Introdução a Programação Android - Aula 1
Introdução a Programação Android - Aula 1Introdução a Programação Android - Aula 1
Introdução a Programação Android - Aula 1Maycon Viana Bordin
 
Development of a Distributed Stream Processing System
Development of a Distributed Stream Processing SystemDevelopment of a Distributed Stream Processing System
Development of a Distributed Stream Processing SystemMaycon Viana Bordin
 
Portal De Relacionamento entre Parceiros de Negócios para uma Cooperativa Agr...
Portal De Relacionamento entre Parceiros de Negócios para uma Cooperativa Agr...Portal De Relacionamento entre Parceiros de Negócios para uma Cooperativa Agr...
Portal De Relacionamento entre Parceiros de Negócios para uma Cooperativa Agr...Maycon Viana Bordin
 
Arrependimento de adolescentes proprietários de celulares
Arrependimento de adolescentes proprietários de celularesArrependimento de adolescentes proprietários de celulares
Arrependimento de adolescentes proprietários de celularesMaycon Viana Bordin
 
OrganicPM - People Management System
OrganicPM - People Management SystemOrganicPM - People Management System
OrganicPM - People Management SystemMaycon Viana Bordin
 
Sistema para Gestão de Pessoas - OrganicPM
Sistema para Gestão de Pessoas - OrganicPMSistema para Gestão de Pessoas - OrganicPM
Sistema para Gestão de Pessoas - OrganicPMMaycon Viana Bordin
 
Características dos Integrantes das Equipes
Características dos Integrantes das EquipesCaracterísticas dos Integrantes das Equipes
Características dos Integrantes das EquipesMaycon Viana Bordin
 
Propostas de Aplicação de IA no Software Proschedule
Propostas de Aplicação de IA no Software ProschedulePropostas de Aplicação de IA no Software Proschedule
Propostas de Aplicação de IA no Software ProscheduleMaycon Viana Bordin
 
Desenvolvimento de um Software para Sequenciamento da Produção de uma Indústr...
Desenvolvimento de um Software para Sequenciamento da Produção de uma Indústr...Desenvolvimento de um Software para Sequenciamento da Produção de uma Indústr...
Desenvolvimento de um Software para Sequenciamento da Produção de uma Indústr...Maycon Viana Bordin
 

Mais de Maycon Viana Bordin (20)

Introdução a Arquitetura Android
Introdução a Arquitetura AndroidIntrodução a Arquitetura Android
Introdução a Arquitetura Android
 
Desenvolvimento de uma Rede Social Baseada em Geolocalização
Desenvolvimento de uma Rede Social Baseada em GeolocalizaçãoDesenvolvimento de uma Rede Social Baseada em Geolocalização
Desenvolvimento de uma Rede Social Baseada em Geolocalização
 
A Benchmark Suite for Distributed Stream Processing Systems
A Benchmark Suite for Distributed Stream Processing SystemsA Benchmark Suite for Distributed Stream Processing Systems
A Benchmark Suite for Distributed Stream Processing Systems
 
A Benchmark Suite for Distributed Stream Processing Systems
A Benchmark Suite for Distributed Stream Processing SystemsA Benchmark Suite for Distributed Stream Processing Systems
A Benchmark Suite for Distributed Stream Processing Systems
 
Introdução a Programação Android - Aula 5
Introdução a Programação Android - Aula 5Introdução a Programação Android - Aula 5
Introdução a Programação Android - Aula 5
 
Introdução a Programação Android - Aula 4
Introdução a Programação Android - Aula 4Introdução a Programação Android - Aula 4
Introdução a Programação Android - Aula 4
 
Introdução a Programação Android - Aula 3
Introdução a Programação Android - Aula 3Introdução a Programação Android - Aula 3
Introdução a Programação Android - Aula 3
 
Introdução a Programação Android - Aula 2
Introdução a Programação Android - Aula 2Introdução a Programação Android - Aula 2
Introdução a Programação Android - Aula 2
 
Introdução a Programação Android - Aula 1
Introdução a Programação Android - Aula 1Introdução a Programação Android - Aula 1
Introdução a Programação Android - Aula 1
 
Development of a Distributed Stream Processing System
Development of a Distributed Stream Processing SystemDevelopment of a Distributed Stream Processing System
Development of a Distributed Stream Processing System
 
Introdução ao Android
Introdução ao AndroidIntrodução ao Android
Introdução ao Android
 
Portal De Relacionamento entre Parceiros de Negócios para uma Cooperativa Agr...
Portal De Relacionamento entre Parceiros de Negócios para uma Cooperativa Agr...Portal De Relacionamento entre Parceiros de Negócios para uma Cooperativa Agr...
Portal De Relacionamento entre Parceiros de Negócios para uma Cooperativa Agr...
 
Como Vencer no Caos
Como Vencer no CaosComo Vencer no Caos
Como Vencer no Caos
 
Arrependimento de adolescentes proprietários de celulares
Arrependimento de adolescentes proprietários de celularesArrependimento de adolescentes proprietários de celulares
Arrependimento de adolescentes proprietários de celulares
 
OrganicPM - People Management System
OrganicPM - People Management SystemOrganicPM - People Management System
OrganicPM - People Management System
 
Sistema para Gestão de Pessoas - OrganicPM
Sistema para Gestão de Pessoas - OrganicPMSistema para Gestão de Pessoas - OrganicPM
Sistema para Gestão de Pessoas - OrganicPM
 
Características dos Integrantes das Equipes
Características dos Integrantes das EquipesCaracterísticas dos Integrantes das Equipes
Características dos Integrantes das Equipes
 
Propostas de Aplicação de IA no Software Proschedule
Propostas de Aplicação de IA no Software ProschedulePropostas de Aplicação de IA no Software Proschedule
Propostas de Aplicação de IA no Software Proschedule
 
Blocos deslizantes
Blocos deslizantesBlocos deslizantes
Blocos deslizantes
 
Desenvolvimento de um Software para Sequenciamento da Produção de uma Indústr...
Desenvolvimento de um Software para Sequenciamento da Produção de uma Indústr...Desenvolvimento de um Software para Sequenciamento da Produção de uma Indústr...
Desenvolvimento de um Software para Sequenciamento da Produção de uma Indústr...
 

Último

Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfSamaraLunas
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuisKitota
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 

Último (9)

Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 

Algoritmos de Consenso: Paxos vs RAFT