• 티스토리 홈
  • 프로필사진
    31514
  • 방명록
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
31514
  • 프로필사진
    31514
    • 분류 전체보기 (106)
      • Book (66)
        • Learning SQL (9)
        • SQL 레벨업 (8)
        • 견고한 데이터 엔지니어링 (5)
        • 운영체제 (2)
        • 스파크 완벽 가이드 (9)
        • 파이썬 코딩의 기술 (29)
        • 분산 컴퓨팅 (4)
      • 개발 (24)
      • 기타 (10)
        • 출퇴근 공부 간단 정리 (7)
      • ELK (6)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
      등록된 댓글이 없습니다.
    • 최근 공지
      • 31514의 이전 블로그는 여기로!
      등록된 공지가 없습니다.
    # Home
    # 공지사항
    #
    # 태그
    # 검색결과
    # 방명록
    • [Shorts] 분산 컴퓨팅에서의 안정성과 라이브니스를 충족하는 방법
      2025년 02월 10일
      • 31514
      • 작성자
      • 2025.02.10.:55

      A 노드 B 노드가 있다고 가정해보자.

      어떤 사용자는 TC(Transaction Coordinator)에게 자신이 하고자하는 메시지를 보낼 수 있다.

      메시지를 받은 TC는 A 노드와 B 노드에게 사용자가 하고자 하는 일을 전달하고 확인 메시지를 받을 수 있다.

       

      이런 상황에서 TC 또는 노드들에 장애가 발생하면 어떻게 될까?

      예를 들면, TC가 A와 B에게 메시지를 보냈지만 A에게 메시지를 전송하자마자 알 수 없는 이유로 TC에 장애가 발생했다면?

      그럼 B는 A와 달리 어떤 메시지도 받지 못하게 된다.

      이런 상황을 안정성에 위반한다고 할 수 있다.

       

      다른 예로, 사용자가 TC에게 하고자 하는 일을 전달했지만 TC에 장애가 발생하여 A 노드, B 노드 모두 무한정 기다리는 상황이라면?

      이런 상황은 라이브니스에 위반한다고 볼 수 있다.

       

      어떻게 하면 이런 상황을 해결할 수 있을까?

      정답은 WAL과 노드들과의 통신이다.

       

      WAL은 Write - Ahead Log의 약자인데, 특정 행위를 하기 전에 각 디스크에 Log를 기록해두는 것을 말한다.

      이를 통해 시스템에 장애가 발생하도 재부팅 후 로그를 참조하면 무엇을 하고자 했는지 알 수 있다.

       

      노드들과의 통신은 라이브니스를 해결해준다.

       

      이러한 방법을 2단계 커밋 프로토콜이라고 한다.

      '기타 > 출퇴근 공부 간단 정리' 카테고리의 다른 글

      [Shorts] 프로그래밍 언어의 탄생  (0) 2025.02.24
      [Shorts] 윈도우가 디스크에 파일을 저장하는 법  (0) 2025.02.12
      [Shorts] 스트로우맨 프로토콜  (0) 2025.02.05
      [Shorts] 분산 컴퓨팅의 정의  (0) 2025.02.04
      [Shorts] Stored Function  (0) 2025.01.23
      다음글
      다음 글이 없습니다.
      이전글
      이전 글이 없습니다.
      댓글
    조회된 결과가 없습니다.
    스킨 업데이트 안내
    현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
    ("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
    목차
    표시할 목차가 없습니다.
      • 안녕하세요
      • 감사해요
      • 잘있어요

      티스토리툴바