분산 시스템

1 개요[ | ]

distributed system
分散 system
분산 시스템
  • 분산 처리를 행하는 시스템
  • 상호 협조하여 작동하는 여러 개의 컴퓨터에서 이루어지는 시스템
  • 각 노드가 CPU와 메모리를 따로 사용하면서, 서로 연동되는 시스템
  • 분산되어 있는 컴퓨터 시스템들을 통신망으로 연결하여 운용하는 시스템
  • 단일 일관된 시스템으로 사용자에게 나타나는 네트워크를 통해 연결된 자율 컴퓨팅 요소의 모음
  • 일반적으로 노드라고 하는 이러한 구성요소는 하드웨어 장치(예: 컴퓨터, 휴대폰) 또는 소프트웨어 프로세스일 수 있다.
  • 노드는 공통 목표를 달성하고 협조하기 위해 네트워크를 통해 메시지를 교환하도록 프로그래밍된다.
  • 자원 공유 가능, 가격 대 성능비 우수
  • 신뢰성, 확장성 증대
  • 여러 개의 프로세서로 한 대의 컴퓨터를 구성하는 다중 프로세서와는 구별된다.

2 배경[ | ]

  • 오늘날 수많은 최신 애플리케이션은 너무 커서 작동하려면 슈퍼컴퓨터가 필요하다.
  • Gmail이나 Netflix를 생각해 보자.
  • 단일 컴퓨터는 전체 애플리케이션을 호스팅할 만큼 강력하지 않습니다.
  • 여러 대의 컴퓨터를 연결하면 컴퓨팅 성능이 거의 무제한이 된다.
  • 분산 컴퓨팅이 없었다면 오늘날 우리가 사용하는 많은 애플리케이션들이 불가능했을 것이다.
  • 전통적으로 시스템은 더 많은 CPU 또는 메모리를 추가하여 수직으로 확장했는데, 이러한 수직 확장은 시간이 많이 걸리고 다운타임이 필요하며 빠르게 한계에 도달한다.

  • 분산 시스템은 수평적 확장이 가능하다(예: 필요할 때마다 시스템에 노드 추가).
  • 시스템이 갑자기 증가하는 워크로드 또는 리소스 소비를 처리할 수 있도록 자동화할 수 있다.
  • 비분산 시스템은 하나의 시스템이 실패하면 전체 시스템이 실패하기 때문에 자체적으로 실패 위험에 노출된다.
  • 일부 시스템이 다운되더라도 전체 시스템이 계속 작동하여 동일한 결과를 생성할 수 있도록 분산 시스템을 설계할 수 있다.

3 같이 보기[ | ]

4 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}