티스토리 뷰

HTTP

HTTP 특징

0307kjb 2022. 6. 19. 17:44

HTTP 특징

  • 클라이언트 서버 구조
  • 무상태 프로토콜(Stateless)
  • 비연결성
  • HTTP 메시지

 

클라이언트 서버 구조

  • 클라이언트(UI) Request <-> 서버(DATA) Response [복잡한 비지니스 로직 처리]

 

무상태 프토로콜

  • 서버가 클라이언트 상태를 보존x
  • 장점 : 서버 확장성 높음(스케일 아웃)- 이유는 간단한데, 상태를 보존하지 않으니 무한한 서버 증설이 가능하기 때문이다.- 하나의 서버 장애시에도 다른 서버를 실행하면 되니 문제가 되지 않는다.- 수평 확장 가능.
  • 단점 : 클라이언트가 추가 데이터 전송

 

상태풀 프로토콜은 위와 반대라고 보면 된다.

 

 

 

 

Stateless 실무 한계)

모든 것을 무상태로 설계 할 수 있는 경우도 있고 없는 경우도 있다.

무상태 예) 로그인이 필요 없는 단순한 서비스 소개 화면

상태 유지 예) 로그인 : 로그인한 사용자의 경우 로그인 했다는 상태를 서버에 유지

일반적으로 브라우저 쿠키와 서버 세션등을 사용해서 상태 유지

결론 : 상태 유지는 최소한만 사용

 

 

비연결성

각 클라이언트 당 요청/응답 끝나면 TCP/IP 연결 해제.

  • 1시간 동안 수천명이 서비스를 사용해도 실제 서버에서 동시에 처리하는 요청은 적다.
    • 웹 브라우저에서 계속 연속해서 검색 버튼을 누르지는 않는다!
  • 서버 자원을 매우 효율적으로 사용할 수 있음.

단점

  • 계속된 3 Hand Shake실행
  • 수 많은 Resoure도 재전달

그래서 지속 연결(Persistent Connections) 기술이 나옴.

 

 

 

서버 개발자들이 어려워하는 업무. 그래서 최대한 스테이스리스에 맞게 설계하자.

  • 서버 개발자들이 어려워하는 업무
  • 같은 시간에 딱 맞추어 발생하는 대용량 트래픽
  • 예) 선착순 이벤트

 

HTTP 메시지

단순함, 확장 가능성이 좋음

 

'HTTP' 카테고리의 다른 글

HTTP 상태 코드  (0) 2022.07.16
HTTP 메서드 활용  (0) 2022.06.26
HTTP 속성  (0) 2022.06.23
HTTP 기본 지식(2)  (0) 2022.06.15
HTTP 기본지식(1)  (0) 2022.06.13
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함