©AUSG2023
분산 시스템의 어려움부터
Kafka까지 톺아보기
@AUSG 7기 윤종원
분산 시스템의 어려움부터
Kafka까지 톺아보기
@AUSG 7기 윤종원
©AUSG2023
분산 시스템의 어려움부터
Kafka까지 톺아보기
@AUSG 7기 윤종원
분산 시스템의 어려움부터
Kafka까지 톺아보기
@AUSG 7기 윤종원
©AUSG2023©AUSG2023
발표자 소개
윤종원
❖ 소프트웨어학부 복수 전공
❖ 2021 ~ 2023 ‘디어코퍼레이션'에서 산업기능요원으로 근무
❖ AUSG 7기
❖ Contact : eatingcookieman@gmail.com
발표자 소개
윤종원
❖ 소프트웨어학부 복수 전공
❖ 2021 ~ 2023 ‘디어코퍼레이션'에서 산업기능요원으로 근무
❖ AUSG 7기
❖ Contact : eatingcookieman@gmail.com
©AUSG2023©AUSG2023
©AUSG2023©AUSG2023
©AUSG2023©AUSG2023
목차
● 분산 시스템과 분산 알고리즘
○ 부분 실패(Partial Failure)
○ 비결정성(Nondeterminism)
● 장애 감지
○ 동기, 비동기, 부분 동기 모델
● 합의
● ZooKeeper, KRaft
목차
● 분산 시스템과 분산 알고리즘
○ 부분 실패(Partial Failure)
○ 비결정성(Nondeterminism)
● 장애 감지
○ 동기, 비동기, 부분 동기 모델
● 합의
● ZooKeeper, KRaft
©AUSG2023©AUSG2023
분산 시스템(Distributed System)
A distributed system is a system whose components are located on different
networked computers, which communicate and coordinate their actions by
passing messages to one another
Wikipedia
분산 시스템(Distributed System)
A distributed system is a system whose components are located on different
networked computers, which communicate and coordinate their actions by
passing messages to one another
Wikipedia
©AUSG2023©AUSG2023
분산 시스템(Distributed System)
분산 시스템(Distributed System)은 네트워크로 연결된 여러 컴퓨터에서 실행되는
여러 개의 독립적인 시스템의 집합입니다.
각 시스템은 서로 정보를 교환하고, 조정하기 위해 링크를 통해 메시지를 주고 받습니다.
분산 시스템(Distributed System)
분산 시스템(Distributed System)은 네트워크로 연결된 여러 컴퓨터에서 실행되는
여러 개의 독립적인 시스템의 집합입니다.
각 시스템은 서로 정보를 교환하고, 조정하기 위해 링크를 통해 메시지를 주고 받습니다.
©AUSG2023©AUSG2023
분산 시스템(Distributed System)
- 분산 시스템은 여러 개의 독립적인 시스템의 집합입니다.
- 여러 개의 독립적인 시스템은 하나의 컴퓨터가 아니라 네트워크로 연결된
여러 개의 컴퓨터에서 실행됩니다.
- 시스템은 서로 정보를 주고받고, 조정을 위해 링크를 통해 메시지를 주고 받습니다.
분산 시스템(Distributed System)
- 분산 시스템은 여러 개의 독립적인 시스템의 집합입니다.
- 여러 개의 독립적인 시스템은 하나의 컴퓨터가 아니라 네트워크로 연결된
여러 개의 컴퓨터에서 실행됩니다.
- 시스템은 서로 정보를 주고받고, 조정을 위해 링크를 통해 메시지를 주고 받습니다.
©AUSG2023©AUSG2023
분산 시스템(Distributed System)
- 분산 시스템은 여러 개의 독립적인 시스템의 집합입니다.
- 독립적인 시스템은 자신만의 상태를 지니고 있습니다.
- 시스템은 서로 링크(네트워크)를 통해 메시지를 주고 받습니다.
분산 시스템(Distributed System)
- 분산 시스템은 여러 개의 독립적인 시스템의 집합입니다.
- 독립적인 시스템은 자신만의 상태를 지니고 있습니다.
- 시스템은 서로 링크(네트워크)를 통해 메시지를 주고 받습니다.
©AUSG2023©AUSG2023
분산 알고리즘 (Distributed Algorithm)
- Distributed algorithms are algorithms designed to run on multiple
processors, without tight centralized control.
- In general, they are harder to design and harder to understand than
single-processor sequential algorithms.
Wikipedia
분산 알고리즘 (Distributed Algorithm)
- Distributed algorithms are algorithms designed to run on multiple
processors, without tight centralized control.
- In general, they are harder to design and harder to understand than
single-processor sequential algorithms.
Wikipedia
©AUSG2023©AUSG2023
분산 알고리즘 (Distributed Algorithm)
- 분산 시스템을 위한 알고리즘
- 단일 머신에서 실행되는 알고리즘보다 만들기도 어렵고 이해하기도 어렵습니다
분산 알고리즘 (Distributed Algorithm)
- 분산 시스템을 위한 알고리즘
- 단일 머신에서 실행되는 알고리즘보다 만들기도 어렵고 이해하기도 어렵습니다
©AUSG2023©AUSG2023
분산 시스템의 특성
- 부분 실패(Partial Failure)
- 비결정성(Nondeterminism)
- 이는 단일 컴퓨터에서 실행할 때는 나타나지 않는 특성들
분산 시스템의 특성
- 부분 실패(Partial Failure)
- 비결정성(Nondeterminism)
- 이는 단일 컴퓨터에서 실행할 때는 나타나지 않는 특성들
©AUSG2023
부분 실패(Partial Failure)
부분 실패(Partial Failure)
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
In a distributed system, there will always be systems that are broken while others
function normally. It is known as a partial failure
geeksforgeeks
부분 실패(Partial Failure)
In a distributed system, there will always be systems that are broken while others
function normally. It is known as a partial failure
geeksforgeeks
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
분산 시스템에선 일부 시스템에 장애가 생기더라도 나머지 시스템이 정상 작동한다면
분산 시스템은 정상적으로 작동합니다.
이를 부분 실패(Partial Failure)라고 부릅니다.
부분 실패(Partial Failure)
분산 시스템에선 일부 시스템에 장애가 생기더라도 나머지 시스템이 정상 작동한다면
분산 시스템은 정상적으로 작동합니다.
이를 부분 실패(Partial Failure)라고 부릅니다.
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
부분 실패(Partial Failure)
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
부분 실패(Partial Failure)
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
부분 실패(Partial Failure)
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
부분 실패(Partial Failure)
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
부분 실패(Partial Failure)
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
부분 실패(Partial Failure)
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
부분 실패(Partial Failure)
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
부분 실패(Partial Failure)
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
부분 실패(Partial Failure)
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
부분 실패(Partial Failure)
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
부분 실패(Partial Failure)
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
분산 시스템에선 일부 시스템에 장애가 생기더라도 나머지 시스템이 정상 작동한다면
분산 시스템은 정상적으로 작동합니다.
이를 부분 실패(Partial Failure)라고 부릅니다.
부분 실패(Partial Failure)
분산 시스템에선 일부 시스템에 장애가 생기더라도 나머지 시스템이 정상 작동한다면
분산 시스템은 정상적으로 작동합니다.
이를 부분 실패(Partial Failure)라고 부릅니다.
©AUSG2023©AUSG2023
부분 실패(Partial Failure)
부분 실패(Partial Failure)