← 질문 목록
#323깊이 0
보내는 쪽이 받는 쪽보다 빠르면 무엇이 터지는가?
사이에 낀 큐가 먼저 터진다. 메모리가 차거나, 차기 전에 응답이 한없이 늦어진다.
- 1. 보내는 쪽에서 큐로: 초당 1000건
- 2. 큐에서 받는 쪽으로: 초당 300건만 나간다
- 3. 큐에서 보내는 쪽으로: 자리가 없다. 잠깐 멈춰라
큐 길이에 한도가 없으면 문제가 늦게 드러난다. 겉으로는 다 받아 주는데 안에서 쌓이다가 어느 순간 메모리가 바닥난다.
한도를 두면 선택이 생긴다. 자리가 없을 때 보내는 쪽을 멈추게 하거나, 버리거나, 거절한다.
멈추게 하는 것이 백프레셔다. 느린 쪽의 속도가 앞으로 전해져 전체가 감당할 수 있는 속도로 맞춰진다.
버리는 쪽을 고를 때도 있다. 오래된 것부터 버리는 편이 나은 자리가 있다 — 실시간 지표처럼 늦은 값이 쓸모없는 것이 그렇다.