HTTP
- 모든 것이 HTTP 기반 위에서 동작
- 클라이언트 서버 구조
- Stateful, Stateless
- 비 연결성 (connectionless)
- HTTP 메시지
HTTP
HyperText Transfer Protocol
모든 것이 HTTP
HTTP 메시지에 모든 것을 전송
- HTML, TEXT
- IMAGE, 음성, 영상, 파일
- JSON, XML (API)
- 거의 모든 형태의 데이터 전송 가능
- 서버간에 데이터를 주고 받을 때도 대부분 HTTP 사용
- HTTP 시대
HTTP 역사
- HTTP/1.1 1997년 : 가장 많이 사용. 우리에게 가장 중요한 버전 ⭐
- RFC2068 (1997) → RFC2616 (1999) → RFC7230 ~ 7235 (2014)
- HTTP/2 2015년 : 성능 개선
- HTTP/3 진행 중 : TCP 대신 UDP 사용, 성능 개선
기반 프로토콜
- TCP : HTTP/1.1, HTTP/2
- UDP : HTTP/3
- 현재 HTTP/1.1 주로 사용
HTTP 특징
- 클라이언트 서버 구조로 동작
- 무상태 프로토콜 (스테이스리스), 비연결성
- HTTP 메시지로 통신
- 단순함, 확장 가능
클라이언트 서버 구조
- Request Response 구조
- 클라이언트는 서버에 요청을 보내고, 응답을 대기
- 서버가 요청에 대한 결과를 만들어서 응답
- 서버는 비즈니스 로직과 데이터에 집중
- 클라이언트는 사용성과 UI에 집중
- 각각 독립적으로 집중한 요소가 발전