HTTP/1.1 한 연결에서는 앞 응답 지연이 뒤 요청의 대기열이 된다
pipelining이나 keep-alive가 있어도 같은 TCP 연결 안에서는 앞선 응답이 늦으면 뒤 요청이 영향을 받기 쉽다.
1 req A느린 이미지/API응답 생성 지연
2 req B작은 리소스A 뒤에서 대기
3 req C캐시 가능한 파일같은 연결이면 함께 지연
4 workaround연결 추가 또는 domain sharding병목을 우회
현상
원인
해결 방향
Head-of-line
한 연결의 순서 제약
HTTP/2 multiplexing
연결 증가
병렬성 확보를 위한 우회
서버와 브라우저 connection limit 고려
우선순위 꼬임
큰 응답이 작은 응답을 늦춤
리소스 분리와 캐시 전략