프로젝트 초반에는 단순히 편하게 HTTP를 사용했는데, 나는 그럼 왜 HTTP를 사용했던 것일까?

 

1. HTTP란

HyperText Transfer Protocol

웹에서 정보를 주고받기 위해 약속된 통신 규칙(프로토콜이다)

클라이언트와 서버 사이에서 HTML, JSON, 이미지 등 다양한 리소스를 텍스트 기반으로 요청하고 응답하는 방식이다.

 

2. 왜 HTTP가 기본이 되었을까?

-일단 전세계의 웹브라우저와 서버가 모두 HTTP를 기본 통신규약으로 채택했기 때문

-그리고 텍스트 기반의 요청(GET,POST 등) 에 응답(200 ok, 404등)을 사용하여 배우고 쓰기 쉽다.

-확장성이 좋다고 한다.: 쿠키, 세션, 인증 등 다양한 기능을 쌓아올리기가 쉽다고 

-또한 모든 웹 개발 기술 React, Spring, Node 등이 모두 HTTP를 기본으로 삼았다고.

 

3. 그외의 다른 프로토콜?

FTP: 파일전송용 프로토콜로 보안에 취약해서 현대에는 거의 쓰지 않는다고 한다.

SMTP, IMAP: 이메일 전송, 수신 용도로 특수목적이라 일반 웹과는 무관하다고 함

WebSocket : 실시간 양방향 통신으로 채팅이나 게임 등에만 쓴다. 

-> 생각해보면 FTP도 수업시간에 써본것 같고, SMTP도 프로젝트하면서 간단하게 썼던것 같고,

WebSocket으로도 실습을 해보았다. 

 

그러면 HTTPS는?

사실 현대의 많은 웹사이트들은 모두 HTTPS를 사용하고 있다.

이는 HTTP에 secure 즉 보안이 더해진 방식이다. 

개발할때는 http로 하더라도, 운영할때는 실질적으로 https를 써야하는 것이 필수.

 

여기서 HTTP/1.1, HTTP/2, HTTP/3 이런 종류들이 있는데,

간단한 테스트를 위한 개발 서버들은 주로 HTTP/1.1 (기본 톰캣 설정)이라고 하고,

실제 서비스되는 경우, 속도가 중요한 경우 HTTP/2 (Nginx 등 활용) - 병렬형구조라고 한다.

 

+ Recent posts