HTTP란?
HTTP는 HyperTextTransferProtocol의 약자이며, 인터넷에서 데이터를 주고 받을 수 있는 프로토콜이다.
HTTP의 특징
- 클라이언트 서버 구조
- 무상태 프로토콜, 비연결성
- HTTP 메시지
- 단순함, 확장 가능
HTTP의 클라이언트-서버 구조
클라이언트가 HTTP 요청을 서버에 전송하면,
서버는 HTTP응답을 클라이언트에 전달한다
무상태(Stateless) 프로토콜
무상태 : 서버가 클라이언트의 상태를 보존하지 않는다.
ex) 한 번 로그인 뒤, 다른 페이지에 접속하거나 새로고침을 할 경우 로그인 상태를 보존하지 않기 때문에, 계속 로그인해야한다.
고객이 요청할 경우 정보를 제공해준다면, 중간에 점원이 바뀌더라도 문제가 없다.
무상태는 응답서버를 쉽게 바꿀 수 있다 => 무한한 서버 증설(스케일 아웃) 가능 (점원을 많이 투입)
일반적으로는 쿠키와 세션을 사용해서 상태를 유지한다.
비연결성 - Connectionless
비연결성은 클라이언트와 서버가 한 번 연결을 맺은 후, 클라이언트 요청에 대한 응답이 끝나면 연결을 끊어버리는 성질을 말합니다.
- HTTP는 기본이 연결을 유지하지 않는 비연결성 모델이다.
- 일반적으로 초 단위의 이하의 빠른 속도로 응답한다
- 1시간 동안 수천명이 서비스를 사용하더라도, 실제로 동시에 처리하는 요청은 수십개 이하로 매주 적어진다.
- 자원을 효율적으로 사용할 수 있다.
하지만, 모든 요청에 대해서 매번 새로운 연결을 시도 / 해제의 작업을 거치기 때문에 오버헤드가 생기는 단점도 있습니다.
HTTP 메시지
요청 메시지 | 응답 메시지 | |
시작라인 |
|
|
헤더 |
|
출처
[인프런] 모든 개발자를 위한 HTTP 웹 기본 지식
https://www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC/dashboard
모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런 | 강의
실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., - 강의 소개 | 인프런...
www.inflearn.com
'WEB > 네트워크' 카테고리의 다른 글
[네트워크] HTTP 공부 #6 (0) | 2022.03.31 |
---|---|
[네트워크] HTTP 공부 #5 (0) | 2022.03.29 |
[네트워크] HTTP 공부 #4 (0) | 2022.03.28 |
[네트워크] HTTP 공부 #2 (0) | 2022.02.11 |
[네트워크] HTTP 공부 #1 (0) | 2022.02.11 |