본문 바로가기
개인공부/패스트캠퍼스 CS

[CS] 1-3.HTTP(HyperText Transfer Protocol)

by 뭉지야 2023. 7. 27.
728x90

# HTTP(HyperText Transfer Protocol)

-HTTP란, 웹상에서 데이터를 주고받기 위한 프로토콜이다.
-웹 문서를 주고받기 위하여 사용할 수 있다.
-웹뿐만 아니라 모바일 앱, 게임 개발에서도 다양한 목적으로 사용되곤 한다.

# HTTP 메서드(method)

-클라이언트는 요청(request)의 목적에 따라 적절한 HTTP메서드를 사용한다.

 

# HTTP 메서드 사용 예시
-특정한 웹 사이트에 접속하면, 기본적으로 GET방식으로 호출을 진행한다.
-상태코드(status code)를 이용해 본인의 요청에 대한 결과를 응답 받을 수 있다.
-웹 사이트는 대개 HTML, JavaScript, CSS 코드를 반환하며 웹 브라우저는 이를 화면에 출력한다.

# HTTP 상태 관리와 세션
- HTTP는 상태를 저장하지 않는다.(Stateless)
-클라이언트는 HTTP로 서버에 연결한 뒤에, 응답을 받으면 연결을 끊어버린다.
서버 입장에서 접속 유지에 대한 요구가 적어, 불특정 다수를 대상으로 하는 서비스에 적합하다.
-예시로, 상품확인-> 장바구니 -> 결제의 과정이 시스템적으로 상태 정보로 기록되지 않는다.
-하지만, 세션(Session)을 이용해 원하는 기능이 수행되도록 한다.

# Keep Alive 기능
- HTTP 1.1 버전부터 keep-alive를 지원한다.
- 하나의 웹 사이트에 방문하면 대개 수십 개의 파일(css, 이미지, HTML, JS)를 제공한다.
- TCP 통신 과정에서 연결 수행/연결 해제 과정에서 리소스가 많이 소요된다.
- keep-alive는 이런 파일을 하나씩 받기 위하여 매번 연결을 맺고 끊는 것을 방지한다.

728x90

'개인공부 > 패스트캠퍼스 CS' 카테고리의 다른 글

[CS] 2-1. 컴퓨터 구조 기초  (0) 2023.08.07
[CS] 1-6. JWT(JSON Web Token)  (0) 2023.08.05
[CS] 1-4. REST API  (0) 2023.08.01
[CS] 1-5. OAuth  (0) 2023.08.01
[CS] 1-2. 쿠키와 세션  (0) 2023.07.27