view final_main/images/paxos1.pu @ 8:0ad9752c0c85

add chapter5 and 6
author akahori
date Mon, 18 Feb 2019 18:35:32 +0900
parents
children
line wrap: on
line source

@startuml
title Paxos 1
/' ======= style ======= '/

skinparam sequence {
ArrowColor black
LifeLineBorderColor black

ParticipantBorderColor black
ParticipantBackgroundColor white
ParticipantPadding 20
}

/' ======= node name ======= '/

/' === proposers === '/
participant proposer1
activate proposer1
participant proposer2
activate proposer2

/' === acceptors === '/
participant acceptor1
activate acceptor1
participant acceptor2
activate acceptor2
participant acceptor3
activate acceptor3

/' === learners === '/
participant learner1
activate learner1

/' ======= uml ======= '/

proposer1 -> acceptor1:Prepare request \n\
Proposal(7, 1)
proposer1 -> acceptor2
proposer1 -> acceptor3

acceptor1 --> proposer1:Promise Success\n\
Proposal(7, 1)
acceptor2 --> proposer1
acceptor3 --> proposer1

proposer2 -> acceptor1:Prepare request \n\
Proposal(8, 2)
proposer2 -> acceptor2
proposer2 -> acceptor3

acceptor1 --> proposer2:Promise Success\n\
Proposal(8, 2)
acceptor2 --> proposer2
acceptor3 --> proposer2

proposer2 -> acceptor1:Accept request \n\
Proposal(8, 2)
proposer2 -> acceptor2
proposer2 -> acceptor3

acceptor1 --> proposer2:Accept \n\
Proposal(8, 2)
acceptor1 -> learner1:Accept \n\
Proposal(8, 2)

acceptor2 --> proposer2:Accept \n\
Proposal(8, 2)
acceptor2 -> learner1:Accept \n\
Proposal(8, 2)

learner1 -> learner1:chosen \n\
Proposal(8, 2)

@enduml