LabHub

마이크로서비스 아키텍처 · 동기 통신(REST·gRPC)과 그 대가 · 퀴즈

퀴즈: 동기 통신의 대가

LabHub 에서 이어서 보기

문항 6개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.

  1. 다운스트림이 5초씩 느려질 때 업스트림에서 가장 먼저 마르는 자원은?

    1. 디스크 I/O 대역폭
    2. CPU 사용률
    3. 커넥션 풀 또는 스레드 풀
    4. 애플리케이션 힙 메모리
  2. 재시도해도 되는 오류로 묶인 것은?

    1. 400, 401, 404
    2. 422, 409, 403
    3. 301, 302, 304
    4. 타임아웃, 503, 429
  3. 인스턴스 20대가 초당 100건을 처리하고 maxAttempts 가 5 라면 다운스트림이 받을 수 있는 최악의 초당 요청 수는?

    1. 초당 125건
    2. 초당 10,000건
    3. 초당 500건
    4. 초당 2,000건
  4. 호출 체인 A → B → C 에서 타임아웃을 모두 3초로 두면?

    1. 가장 안전한 설정이다
    2. C 가 먼저 포기한다
    3. A 가 포기한 뒤에도 B 와 C 가 계속 일해 자원을 낭비한다
    4. 전체 지연이 3초로 고정된다
  5. 고정 간격 재시도 대신 지터를 넣는 이유는?

    1. 재시도 사이 평균 대기 시간을 줄여 응답이 빨라져서
    2. 재시도 횟수가 줄어 네트워크 대역폭을 아낄 수 있어서
    3. 재시도 로그가 한곳에 몰리지 않아 로그 양이 줄어서
    4. 동기화된 재시도가 회복 중인 서버를 주기적으로 다시 쓰러뜨리기 때문
  6. '상대는 처리했는데 응답만 유실된 경우'가 특히 위험한 이유는?

    1. 호출자가 '실패'와 '성공했지만 모름'을 구별할 수 없어 재시도가 중복 처리를 만들기 때문
    2. 요청이 처리됐다는 기록이 호출자 쪽 로그에 남지 않아서
    3. 네트워크가 느려져 다음 요청까지 함께 지연되기 때문
    4. 타임아웃 값을 아무리 늘려도 응답을 받을 수 없기 때문