-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathHttp.md
More file actions
45 lines (35 loc) · 1.66 KB
/
Copy pathHttp.md
File metadata and controls
45 lines (35 loc) · 1.66 KB
Edit and raw actions
OlderNewer
1
---
2
layout : wiki
3
title : Http
4
summary : Http 에 대한 정보를 정리
5
date : 2019-05-20 01:49:12 +0900
6
updated : 2019-05-20 02:13:27 +0900
7
tags : http
8
toc : true
9
public : true
10
parent : Web
11
latex : false
12
adsense : true
13
---
14
* TOC
15
{:toc}
16
17
## HTTP 연결 이해를 돕기 위한 내용들
18
19
* 성능 관련 중요 요소
20
* TCP 커텍션의 핸드세이크 설정
21
* 인터넷의 혼자을 제어하기 위한 TCP의 느린시작(slow-start)
22
* 데이터를 한데 모아 한 번에 전송하기 위한 네이블(nagle) 알고리즘
23
* TCP 의 편승(piggyback) 확인응답(acknowledgment)을 위한 확인응답 지연 알고리즘
24
* TIME_WAIT 지연과 포트 고갈
25
26
### TCP Connection HandShake
27
28
* 3 WAY Handshake
29
* Client 는 `SYN` 라는 작은 패킷을 서버에게 보낸다.
30
* 서버는 그에 대한 응답으로 `SYN` + `ACK` 패킷을 보낸다.
31
* Client 는 최종적으로 연결되었음을 알리는 `ACK` 를 보내는데 이때 데이터를 같이 보낼수도 있다.
32
33
34
### Keep-Alive
35
36
* 해당 optioan 을 끈다면, client 에서 매번 연결하는 연결 비용이 발생해서 성능에 좋지 않는 영향을 미칠 수 있다.
37
* 보통은 키고 있는데 성능에 좋다.
38
* API 서버의 경우, 보통 출발지가 고정되어 있기 때문에 설정하는게 초고 timeout 설정은 10s 정도가 적당함
39
40
41
### 참고자료
42
43
* [CLOSE_WAIT & TIME_WAIT 최종 분석](http://tech.kakao.com/2016/04/21/closewait-timewait/)
44
* [HTTP 완벽 가이드](http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9788966261208&orderClick=LEA&Kc=)
45
* [권남님의 wiki - web performance][http://kwonnam.pe.kr/wiki/web/performance]