HTTP

hyunjoon park·2023년 11월 6일

HTTP

인터넷 상에서 데이터를 전송하기 위한 프로토콜

  • 비연결성
    클라이언트에서 요청을 보낸 후 서버로 부터 응답을 받으면 응답을 끊는 것
    장점 : 불특정 다수의 서비스에 유리

  • 무상태
    서버에서 클라이언트의 상태를 저장하지 않는 것
    장점 : 서버확장성이 좋다

HTTP KEEP Alive

  • 단점
    1. 연결을 유지하지 않기 때문에 서버가 클라이언트를 기억할 수 없다는 단점
    2. 연결과 연결 해제 과정을 반복

이러한 단점을 해결하기 위해 HTTP KEEP Alive가 생김


쿠키와 세션

쿠키 : 브라우저에 저장되는 키와 값이 들어있는 데이터파일

  • 웹 브라우저에 전송하는 작은 데이터 조각
    웹브라우저는 데이터 조각을 저장해놓고 있다가 동일한 서버에 재요청이 들어오면 가지고 있던 데이터를 같이 전송한다

  • 쿠키의 목적
    1. 세션 관리(Session management)
    2. 개인화(Personalization)
    3. 트래킹(Tracking)

세션 : 쿠키랑 비슷한 저장방식을 가지지만, 키값은 클라이언트에 데이터는 서버에 저장

  • 서버가 해당 서버(웹)로 요청(request)한 클라이언트(사용자)를 식별하는 방법

HTTP vs HTTPS

HTTPS는 보안계층인 암호화 프로토콜 SSL/TLS가 있어서 전송하려는 데이터를 암호화해서 보호

HTTP: 포트 80
HTTPS: 포트 443


웹페이지 접속과정

  • 브라우저 주소창에 {URL}을 입력한다.
  • 브라우저가 {URL}의 IP 주소를 찾기 위해 캐시에서 DNS 기록을 확인한다
  • 만약 요청한 URL의 캐시가 없다면, ISP의 DNS 서버가 DNS 쿼리로 {URL}을 호스팅하는 서버의 IP 주소를 찾는다.
  • 브라우저가 해당 서버와 TCP 연결을 시작한다.
  • 브라우저가 웹서버에 HTTP 요청을 보낸다.
  • 서버가 요청을 처리하고 응답을 보낸다.
  • 서버가 HTTP 응답을 보낸다.
  • 브라우저가 HTML 컨텐츠를 보여준다.

REST API

REST란?

Representational State Transfer(REST)는 API 작동 방식에 대한 조건을 부과하는 소프트웨어 아키텍처

API란?

정의 및 프로토콜 집합을 사용하여 두 소프트웨어 구성 요소가 서로 통신할 수 있게 하는 메커니즘

Rest 아키텍쳐의 원칙

  1. 균일한 인터페이스
  2. 클라이언트-서버 디커플링
  3. Stateless
  4. 캐싱 가능성
  5. 계층 구조 아키텍처
  6. 코드 온디맨드(옵션)

REST API는 HTTP 요청을 통해 통신함으로써 리소스 내에서 레코드(CRUD 라고도 함)의 작성, 읽기, 업데이트 및 삭제 등의 표준 데이터베이스 기능을 수행한다

profile
Backend Developer

0개의 댓글