협업 및 기타 툴 정보/HTTP

HTTP 기본

만능 엔터테이너 2024. 11. 17. 13:48
728x90
반응형
SMALL

[HTTP] 

✒️ 모든 것이 HTTP(Hyper Text Transfer Protocol)

✒️ 클라이언트 서버 구조

✒️ Stateful, Stateless

✒️ 비 연결성(connetionless)

✒️ HTTP 메시지


모든 것이 HTTP

HTTP 메시지에 모든 것을 전송

- HTML, TEXT, IMAGE, 음성, 영상, 파일, JSON, XML (API) => 거의 모든 형태의 데이터 전송 가능

- 서버 간에 데이터를 주고 받을 때도 대부분 HTTP 사용 => 지금은 HTTP 시대!

TCP는 기본적인 메커니즘이 속도가 느린 메커니즘, UDP 프로토콜에서 성능을 최적화하여 나온 것이 HTTP/3 임
이미, HTTP2프로토콜과 HTTP3 프로토콜이 동시에 사용되고 있음, H3라고 나와 있는게 HTTP3 프로토콜

[HTTP 특징]

📍클라이언트 서버 구조

📍무상태 프로토콜(스테이리스), 비연결성

📍 HTTP 메시지

📍단순함, 확장 가능


클라이언트 서버 구조

 

무상태 프로토콜

Stateful 상태
Stateful 상
Stateless (무상태)
상태 유지 - 중간에 장애요소가 발생하면 오류가 발생함 / 무상태 - 중간에 장애요소가 발생하여도 오류가 발생하지 않음
상태 유지인 경우에는 중간에 장애가 나면 클라이언트A는 처음부터 다시 전송을 해야 되고 중간에 변경이 불가능하기에 서버를 생성하는데에 한계가 존재
처음 클라이언트가 보낼 때, 모든 필요한 정보를 포함하여 보내기 때문에 중간에 오류가 발생하여도 아무 문제 없이 다른 서버로 보낼 수 있음
하지만, 상태 유지해야 되는 경우에는 반드시 서버에서 계속 유지를 해야 하기에 상태를 유지하도록 노력


비 연결성(connectionless)

연결을 유지하는 모델일 경우 클라이언트가 많을 수록 기존에 연결된 클라이언트가 서버에 연결이 지속적으로 되어 있으므로 계속해서 서버의 자원을 소모하게 됨

 

클라이언트마다 요청과 응답을 받고 바로 서버와의 연결을 유지하지 않기에 최소한의 자원만으로 클라이언트-서버 간의 통신을 할 수 있기에 서버의 자원을 효율적으로 관리할 수 있음
하지만, 단점이 존재함 바로 중간에 TCP/IP 연결을 하여 3 way handshake도 전달해줘야 하기에 시간이 추가적으로 소모됨
요청/응답을 하고 지속적으로 연결하지 않고 바로 연결을 종료하는 것
요청 및 응답을 하고 지속적으로 연결되는 형식


HTTP 메시지

HTTP 용청 및 응답 메시지의 구조가 다름
순차적으로 HTTP 메서드, 요청 대상, HTTP Version이 들어가게 됨!



 

728x90
반응형
LIST

'협업 및 기타 툴 정보 > HTTP' 카테고리의 다른 글

HTTP 메서드  (0) 2024.11.17
URI와 웹 브라우저 요청 흐름  (0) 2024.11.17
인터넷 네트워크  (1) 2024.11.16