분산 처리 시스템

1. 목적과 장단점[편집]

  • 여러 자원을 공유하고 속도 및 용량 등의 효율을 높이기 위한 시스템이다.
  • 자원 사용 관점에는 모든 면에서 장점을 가지지만
  • 구축의 난이도나 보안성, 비용적인 측면은 단점이다

2. 투명성[편집]

투명성(Transparency) : 사용자가 분산된 여러 자원의 위치 정보를 알지 못하고 마치 하나의 커다란 시스템을 사용하는 것처럼 인식하도록 하는 것

  • 위치 투명성 : 분산된 시스템이 어디 있는지는 알 필요 없다. 시스템적으로 알아서 통신해서 돌아가니깐
  • 이주 투명성 : 내부적으로 데이터가 이동하는걸 사용자는 알 필요가 없다. 그냥 필요한걸 불러다 사용만 할 뿐
  • 복제 투명성 : 내부적으로 데이터가 복제 되는걸 사용자는 알 필요가 없다. 그냥 필요한걸 불러다 사용만 할 뿐
  • 병행 투명성 : 병행제어에 대해 딱히 고민하지 않아도 된다. 시스템 알아서 한다. 그냥 사용만 할뿐..
  • 접근 투명성 : 어디서든 어디로든 접속 가능하다. 어디에서 어디로 접속하려면 어떻게 할지 신경 쓸 필요 없다.
  • 성능 투명성 : 여러 부하에 의해 알아서 성능을 유지하기 위해 재구성이 이루어진다.
  • 규모 투명성 : 규모에 대해선 신경쓸 필요가 없다. 늘리면 늘리는대로 성능이 좋아질 뿐.
  • 고장 투명성 : 분산 처리니깐, 시스템 하나가 고장나도 작업은 완료할 수 있어야 한다.

3. 분산 처리 구조[편집]

  • 완전 연결(Fully Connection)형
    • 각 사이트들이 시스템 내의 다른 모든 사이트들과 직접 연결됨
    • 구축 비용은 많이 들지만 구축되고 나면 통신 비용은 적게들고 신뢰성이 높음
    • 사이트 수가 n이면 링크 수는 n(n-1)/2 개
  • 부분 연결(Partially Connection)형
    • 시스템 내의 일부 사이트들 간의 직접연결이 형성되는 경우
    • 직접 연결되지 않은 사이트 끼리는 다른 사이트를 경유해서 통신해야 한다.
    • 비용은 좀더 싸지만 신뢰성은 좀더 떨어진다.
  • 트리/계층(Tree/Hierarchy)형
    • 분산 처리 시스템의 가장 대표적인 형태로 사이트들 끼리 트리 형태로 연결 되어 있다.
    • 부분 연결형 보다 기본 비용은 적게 들고 통신 비용은 트리의 깊이에 비례해서 올라감
    • 하위 사이트들은 상위 사이트를 통해서 통신을 해야 한다. 즉, 상위가 죽으면 하위는 통신 불가
  • 스타(Star)형
    • 모든 사이트가 하나의 중앙 사이트에만 연결 된 구조
    • 기본 비용은 사이트 수에 비례하며 통신 비용은 적게 든다
    • 중상 사이트 고장나면 큰일난다
  • 링(Ring)형
    • 시스템 내의 각 사이트가 인접하는 두 사이트와만 연결된 구조
    • 정보는 단방향, 또는 양방향으로 이루어짐. 고리를 이룰수도 있고 선형일수도 있다.
    • 기본 비용은 사이트 수에 비례하고 통신 비용은 비교적 크다
  • 다중 접근 버스 연결(Multi Access Bus Connection)형
    • 시스템 내의 모든 사이트들이 공유 버스에 연결된 구조
    • 기본 비용은 사이트에 비례하고 통신 비용은 저렴한 편이다.
    • 스타형과 비슷하게 버스가 고장나면 큰일난다.
    • 사이트의 추가나 삭제가 용이하다.

4. 프로세스 모델[편집]

  • 클라이언트-서버 모델
  • 프로세서 풀 모델
  • 혼합 모델