http 프로토콜의 특징
http 프로토콜의 특징으로는
클라이언트-서버 구조,
서버가 상태정보를 저장하지 않는 무상태성과
요청을 주고받을때만 연결을 유지하는 비연결성이 있습니다.
http는 클라이언트가 서버에 요청을 보내고 서버가 그에 대한 응답을 보내는 구조로 되어있으며,
클라이언트가 요청을 보내는 방식으로만 서버와 통신할 수 있습니다.
무상태성은 서버가 아닌 클라이언트가 상태정보를 저장하고 있기 때문에 서버의 자원을 효율적으로 활용할 수 있습니다.
클라이언트의 요청이 각각 독립적으로 처리되기 때문에, 서버는 각각의 요청에 대한 응답을 처리하는 데만 집중할 수 있습니다. 또한, 서버가 클라이언트의 상태를 저장하지 않아도 되기 때문에, 서버의 부하를 줄일 수 있습니다.
또 응답 서버를 쉽게 바꿀 수 있으므로 무한한 서버 증설이 가능합니다.
하지만 로그인이 필요한 서비스나 장바구니 등 상태를 서버에 유지시켜야 하는 상황이 있을 수 있습니다.
이때에는 브라우저 쿠키, 서버 세션, 토큰방식의 OAuth 및 JWT 등을 이용해 상태를 유지합니다.
(여러개의 서버가 있을경우 어떤 서버로 요청을 보내도 올바른 응답이 가능하고,
만약 해당 서버에 장애가 생기더라도 다른 서버에서 응답을 전달하면 되기때문에
클라이언트가 재요청할 필요가 없습니다. )
비연결성은 실제로 요청을 주고받을때만 연결을 유지하고 응답을 받은 뒤에는 연결을 끊기때문에
최소한의 자원으로 서버 유지가 가능하다.
하지만 http 초기에는 각각의 자원을 다운로드하기 위해 연결과 종료를 반복해야하는 비효율적인 부분이 있었고,
이를 http 지속연결을 통해 문제를 해결할 수 있습니다.
http 지속 연결에서는 연결이 이루어지고 난 뒤 각각의 자원들을 요청하고
모든 자원에 대한 응답이 돌아온 후에 연결을 종료함으로 이전의 단점들이 개선되었습니다.
'study > TIL' 카테고리의 다른 글
23.03.15 - Tree, Graph (0) | 2023.03.15 |
---|---|
23.03.14 - 자료구조, Stack, Queue (0) | 2023.03.14 |
23.03.09 - OAuth (0) | 2023.03.09 |
23.03.08 - Token (0) | 2023.03.08 |
23.03.07 - Cookie, Session (0) | 2023.03.07 |