본문 바로가기

CS 과목(CS科目)/네트워크(ネットワーク)

HTTP(모든 개발자를 위한 HTTP 웹 기본 지식)

HTTP/1.1 : 현재 가장 많이 사용 중인 HTTP 버전

(크롬은 이미 UDP 기반의 HTTP/3.0을 쓰고 있다)

HTTP 특징

1] 클라이언트 서버 구조

2] 무상태 프로토콜(Stateless), 비연결성

-> 상태(Stateful) 유지 프로토콜 : 중간에 다른 서버로 바뀌면 안 된다는 약속(만약 바꾸게 되면 중간에 다른 서버로 바뀔 때마다 그 서버에게 상태 정보를 다 전달해야 하는 치명적인 문제점이 있다)

-> 무상태(Stateless) 프로토콜 : 중간에 얼마든지 다른 서버로 바뀌어도 된다.(애초에 클라이언트가 서버에게 요청을 할 때 HTTP 요청에 서버가 필요한 모든 데이터를 담아서 보낸다. 고로, 서버가 중간에 셧다운이 되어도 서버가 필요로 하는 모든 데이터를 담은 해당 요청을 다른 서버에게 보내어 처리하게 만들면 된다.) 

3] HTTP 메세지

4] 단순함, 확장 가능함

*모든 것을 무상태로 설계할 수는 없다. 

EX) 로그인 : 로그인했다는 상태를 서버에 유지해야 함

-> 상태 유지는 최소한으로만 사용해야 한다. 

무상태의 단점 : 데이터를 너무 많이 보낸다. ㅠㅠㅠ