distributed system12 [강의 정리] Distributed System 6: Consensus # 강의 영상 정리 이번 장에서는, 우리는 다시 total order broadcast 의 문제에 대해서 되돌아가보도록 하겠습니다. 바로 이전 장에서 우리는 state machine replication (SMR) 을 활성화 하는데 total order broadcast 가 굉장히 유용할 것이라는 것을 보았어요. 그리고, 이 total order broadcast 를 구현하는 방법중의 하나로 하나의 노드를 leader 로 만들고, 모든 메시지를 그 leader 를 통하도록 하는 방법도 살펴 보았습니다. leader 는 받은 메시지를 FIFO broadcast 로 각 노드들에 전달하게 되고, 이는 각 메시지들이 동일한 순서대로 전달 되는 것을 보장해줄 수 있습니다. 하지만, 이 구조의 가장 큰 그리고 중요.. 2023. 4. 11. [강의 정리] Distributed System 5.3: Replication using broadcast # 강의 영상 정리 이전 장 2023.03.31 - [아키텍쳐] - [강의 정리] Distributed System 5.2: Quorums (정족수) 에서 살펴본 quorum 방식은 기본적으로 best-effort broadcast 를 이용합니다. (best-effort broadcast: client 가 보내는 모든 read/write 를 전체 replica로 전송 될 때, protocol 이 안정적이지가 않아서 올바른 순서로 오지 않을 수 있음) 다른 방법으로는 이전 2023.03.22 - [아키텍쳐] - [강의 정리] Distributed System 4: Broadcast protocols and logical time 에서 살펴본 broadcast 프로토콜이 있습니다. 한번 FIFO-total .. 2023. 3. 31. [강의 정리] Distributed System 5.2: Quorums (정족수) # 강의 영상 정리 이 강의의 시작에서 얘기 했던 것과 같이 replication 은 시스템의 신뢰도를 향상시키는데 많이 유용합니다. 여러개의 replica 가 있을 때 하나의 replica 가 고장났을 때, 남은 하나가 이어서 연산을 진행 시킬 수 있기 때문입니다. 고장이 났다는건, 하드웨어 요소일 수도 있고 네트워크 문제일 수 있고, 소프트웨어 업데이트 등의 계획된 작업들 때문일 수도 있습니다. 하지만, 그 replication 을 정확히 어떤 식으로 구현했냐에 따라 시스템의 안정성에 큰 영향을 끼칩니다. fault tolerance 를 제외 하고는, 여러개의 replica 를 가진다는 것은 오히려 안정성을 안좋게 만듭니다. 더 많은 replica 를 가질 수록 각 replica 에 오류가 생길 확률.. 2023. 3. 31. [강의 정리] Distributed System 4: Broadcast protocols and logical time # 강의 영상 정리 이번 4 장에서는 여러 참여 노드들에 메시지를 보내는 방식인 "broadcast protocols(multicast protocols)" 방식에 대해서 알아볼 것입니다. 실 환경에는 여러 broardcast protocol 들이 존재하는데, 이 방식 들은 여러 노드 들에 메시지를 보낸다는 컨셉은 동일하지만 어떤 식으로 메시지를 정렬 할 것인가 에 대한 차이점이 존재합니다. 그리고 우리는 바로 이전 글에서 time 을 기준으로 메시지를 정렬하는 방법에 대해서 살펴보았습니다. 즉, 이번 장에서는 분산 시스템에서 clock 을 통해 메시지를 추적하는 방안에 대해서 조금 더 깊게 파고들어 보겠습니다. Logical time clock 을 구분짓는 큰 부분으로 Logical 과 physical.. 2023. 3. 22. 이전 1 2 3 다음