소프트웨어 아키텍처 - 10(Master-Slave Architecture Style)

박승현·2023년 10월 8일
0

아키텍처

목록 보기
10/30
post-thumbnail

Master-Slave Architecture Style


Hierarchical Software Architecture

  • 개요
    • 시스템 전체를 계층 구조로 생각
    • 소프트웨어 시스템은 계층 구조의 다른 수준에서 논리적인 모듈로 분해
  • 구조
    • 서로 다른 수준의 모듈은 메서드의 호출을 통해 연결
    • 낮은 수준은 인접한 상위 수준 모듈에 서비스를 제공하고 상위 수준 모듈은 낮은 수준의 모듈에서 메서드를 호출
  • 계층 구조는 다른 스타일과 결합되는 가장 인기 있는 스타일 중 하나
  • Four kinds of architecture styles
    • Master-slave
    • Layered
    • Virtual machine & Container
    • Plug-In & Microkernel

Master-Slave Architecture Style

  • 개요
    • main-sub스타일의 변형, supports fault tolerance and system reliability(장애 허용, 시스템 신뢰성)
  • 구조
    • slave들은 master에게 복제된 서비스를 제공하며, 마스터는 복제된 서비스의 호출을 구성, 슬레이브중 전략에 따라 하나의 결과(슬레이브)를 선택
    • 슬레이브들은 동일한 기능을 서로 다른 알고리즘과 방법 또는 완전히 다른 기능성(다른 역할을할 수도 있음)으로 수행할 수 있음

Master-Slaver 특성

  • 이 아키텍처는 병렬 컴퓨팅과 계산 정확도가 특성에 포함
  • 모든 슬레이브는 병렬로 실행될 수 있음
  • 동일한 작업이 여러 다른 구현에 위임되기 때문에 다수 투표 전략 또는 다른 알고리즘을 사용하여 부정확한 결과를 방지할 수 있음

  • 신뢰성이 중요한 소프트웨어 시스템에서 사용
  • 서버의 복제 때문에 가능함

서버를 복제하여 시스템 내의 장애 발생 시 시스템을 계속 운영할 수 있도록 해주고 동일한 작업에 대한 여러 처리결과를 통해 신뢰성이 향상된다

profile
KMU SW

0개의 댓글