[ 대규모 시스템 설계 기초 ] 1장

이유진·2022년 7월 14일
0

스터디

목록 보기
2/2
  • 수직적 규모 확장 / 스케일 업(scale up)
    • 고사양, 고성능 자원 증설 행위( 서버 자체의 성능 확장(upgrade) 의미 )
    • 서버에 유입되는 트래픽 양 적을 때 좋음
    • 장점
      1. 단순하다.
    • 단점
      1. 수직적 규모 확장의 한계 존재한다. -> CPU, RAM 등을 무한 증성 불가능
      2. 장애에 대한 자동복구다중화 제시하지 않는다.
      3. SPOF(Single Point of Failure)로 인한 위험성 크다
      3. 비용이 많이 든다.

  • 수평적 규모 확장 / 스케일 아웃(scale out)
    • 서버 추가로, 서버 성능 향상 행위 ( 서버 증설(여러개)하여 운영하는 것 의미)
    • 서버에 유입되는 트래픽 양 많을 때 좋음
    • 장점
      1. 대규모 지원


  • 로드밸런싱(Load Balancing) : 네트워크 트래픽 부하를 효율적으로 고르게 분산하는 것을 의미
  • 로드밸런서(Load Balancer) : 분산하는 작업을 담당하는 장비를 의미
    • 어플리케이션의가용성(availability) 향상
    • 3가지 네트워크 기술
      1. NAT(Networik Address Translation) : private IP -> public IP 변환( IP 주소 변환 기능 )
      2. DSR(Dynamic Source Routing Control) : 요청에 대한 응답할 때, 로드밸런서가 아닌 클라이언트 IP로 바로 응답 ( 로드 밸런서의 부하 줄여주는 장점 )
      3. Tunneling : 데이터를 캡슐화 하여, 연결된 노드만 캡슐화 해제 할 수 있게 만듬
    • 로드밸런서 동작원리 [Bridge/Transparent Mode]
      1. 유저의 public IP 주소 접속 [ 요청 ]
      2. 로드밸런서를 통해 private IP(같은 네트워크에 속핱 서버 사이의 통신에만 사용 가능) 주소 변경후, 실제 서버로 트래픽 요청 [ 요청 ]
      3. 서버에서 로드밸런서로 받은 요청 응답 및 전달 [ 응답 ]
      4. 로드밸런서를 통해 private IP주소로 유저에게 전달 [ 응답 ]

  • 데이터베이스 다중화
    • 장점
      1. 성능 증가
      2. 안정성(reliablity)
      3. 가용성(availablility)

참고
참고
참고
참고

profile
차근차근 배워나가는 주니어 개발자

0개의 댓글