NW-study / system-design-interview

8 stars 0 forks source link

[Volume 2][Chapter 04] Q&A #20

Open KKambi opened 5 months ago

KKambi commented 5 months ago

122p. 회전디스크

높은 순차 탐색 성능

제목 없음 seek time + rotation time + transfer time

적극적 디스크 캐시 전략

검색하니까 안나오는데, 124p에 나온 디스크 데이터를 메모리에 아주 적극적으로 캐시 이 의미인 것 같음


127p. 순환 중복 검사(Cyclic Redundancy Check, CRC)

특정 수학적 연산에 기초하여 계산한다.


132p. Long Polling

Short Polling

Long Polling

Short / Long의 차이가 클라이언트의 요청 주기라고 생각했는데 아니었음 Short : 잦은 실시간 통신이 필요한 경우 좋지 않으나, 정기적인 업데이트나 간단한 정보 요청에 유리


152p. 카프카의 exactly once에 관한 이야기

카프카 기본 = at least once


문제가 발생해도 exactly once를 보장하기 위한 카프카 기능

  1. 멱등성 프로듀서 : Producer unique ID + Sequence ID 전달
  2. 트랜잭션 프로듀서/컨슈머
    • 프로듀서 : 여러 레코드를 원자 단위로 묶어 전달
    • 컨슈머 : 트랜잭션이 완료된 메세지만 읽음
    • 추가적으로 : 컨슈머의 오프셋 커밋을 트랜잭션에 포함하는 기능 (sendOffsetsToTransaction)
    • This method should be used when you need to batch consumed and produced messages together, typically in a consume-transform-produce pattern. 제목 없음


데브원영 - 아파치 카프카 Exactly-once 처리의 진실과 거짓 결론 = 정확히 한 번을 달성할 수 있는 구간이 정해져있다.

  1. 프로듀서 → 토픽 : 멱등성 프로듀서
  2. 토픽A → 컨슈머 → 프로듀서 → 토픽B : 트랜잭션 프로듀서/컨슈머


토픽 → 컨슈머 구간만 봤을 때, 카프카로만 정확히 한 번을 달성할 수 없다.


따라서 세 구간을 나눠서 생각한다.

  1. 프로듀서->토픽 : 멱등성 프로듀서
  2. 토픽->컨슈머->프로듀서->토픽 : 트랜잭션 프로듀서/컨슈머
  3. 토픽->컨슈머 : (카프카가 아닌 곳에서도) 멱등성 처리
zziri commented 5 months ago
kihyun-yang commented 5 months ago

p124 WAL?

travelbeeee commented 5 months ago

p.122 ~ 123

p.125 디스크 성능 관련 유의사항

meloncha commented 5 months ago

p.122

p.154

janeljs commented 5 months ago

p.123

p.124

p. 134

p. 151

easyfordev commented 5 months ago

저 책을 3단계 초반까지밖에 못읽었어요 ㅜ 이번 챕터는 카프카를 설계하는거구나...정도로 이해했습니다..

p.115