분산 시스템

    [Cloud Native] 분산 시스템의 기초 개념들

    [Cloud Native] 분산 시스템의 기초 개념들

    비둘기 책을 읽고 정리한 글입니다 분산 시스템이란? 분산 시스템은 개별 컴퓨터들이 네트워크로 연결되어서 하나의 컴퓨터로 보이는 시스템이다. 분산 시스템의 8가지 일반화 오류 네트워크는 안정적이다 네트워크는 언제든지 불안정해질 수 있다. 서비스들은 서로 다른 장비에 존재하기 때문에 잠재적인 네트워크 장애에 대응할 수 있도록 어플리케이션을 설계해야 한다. 네트워크 지연이 없다 넓은 의미의 네트워크 지연은 데이터를 받을 때까지 걸리는 시간을 의미한다. 서로 다른 장비에 있는 서비스들 간의 통신은 네트워크 지연이 반드시 존재한다. 네트워크 호출, 네트워크 통신 횟수를 줄여야 한다. 클라이언트와 가까운곳에 데이터를 두도록 한다. 이를 위해 캐싱, CDN, 멀티리전 배포 등을 활용할 수 있다. Pub/Sub 방법을..

    [컴퓨터 구조] 다중 프로세서 시스템 #2

    [컴퓨터 구조] 다중 프로세서 시스템 #2

    [컴퓨터 구조] 다중 프로세서 시스템 #1 MIMD 조직의 다중프로세서 구조에 대해서 알아보자. MIMD의 밀결합 방식이란? 주기억장치가 어느 한 프로세서에 속하지 않고, 모든 프로세서들에 의해 공유되는 방식을 의미한다. 프로세서는 분 hyeo-noo.tistory.com MIMD의 소결합 방식이란? 프로세서들이 기억장치를 공유하지 않고, 각 프로세서가 자신의 기억장치를 별도로 가지고 있는 방식이다. 소결합 방식을 사용하는 다중 프로세서 시스템을 분산-기억장치 시스템 구조라고 부르겠다. 분산-기억장치 시스템 분산-기억장치 시스템의 특징은 다음과 같다. 각 프로세서가 자신의 기억장치를 별도로 가지고 있기 때문에, 프로세서가 실행할 프로그램이 컴파일 단계에서부터 별도로 작성되어 각 프로세서의 기억장치로 적재..

    [컴퓨터 구조] 다중 프로세서 시스템 #1

    [컴퓨터 구조] 다중 프로세서 시스템 #1

    MIMD 조직의 다중프로세서 구조에 대해서 알아보자. MIMD의 밀결합 방식이란? 주기억장치가 어느 한 프로세서에 속하지 않고, 모든 프로세서들에 의해 공유되는 방식을 의미한다. 프로세서는 분산되어있지만 기억장치를 공유하기 때문에 각각의 프로세서가 기억장치라는 매개체를 통해서 밀접하게 연관되어 있다는 뜻의 밀결합 방식이라고 생각된다. 밀결합 방식을 사용하는 다중 프로세서 시스템을 공유-기억장치 시스템 구조라고 부르겠다. 공유-기억장치 시스템 이 시스템의 장점은 다음과 같다. 프로세서들이 공통으로 사용하는 데이터들이 공유 기억장치에 저장되므로, 별도의 프로세서 간 통신 메커니즘이 필요하지 않다. 프로그램 실행시간 동안에 각 프로세서들이 처리할 작업들을 동적으로 균등하게 할당할 수 있기 때문에, 프로세서 이..