상추의 IT저장소

IT지식) HTTP통신 VS Socket 통신 본문

IT지식

IT지식) HTTP통신 VS Socket 통신

구너상추 2022. 11. 22. 19:39

HTTP통신

- HTTP란  HyperText Transfer Protocol의 약자로 HTML 파일을 전송하는 프로토콜이라는 의미를 가진다.

- HTTP 통신은 클라이언트에서 서버로 요청을 보내고 서버가 응답하는 방식으로 통신이 이루어진다. 응답에는 클라이언트의 요청에 따른 결과를 반환한다. 즉, 클라이언트의 요청이 있을 때 서버가 응답하는 방식으로 단방향 통신이다.

- 서버의 응답에는 응답코드가 같이 전송되며, 사용자는 응답 코드와 메세지 응답으로 부터 오는 메세지 바디를 통해 요청 값을 전달 받는다.

- JSON, Image, HTML 파일 등 다양한 파일을 전송 받을 수 있다.

 

소켓통신

- 소켓통신이란 두프로그램이 서로 데이터를 주고 받을 수 있도록 양쪽에 생성되는 통신 단자이다.

- 소켓 통신이란 서버와 클라이언트 양방향 연결이 이루어지는 통신으로, 클라이언트도 서버로 요청을 보낼 수 있고 서버도 클라이언트로 요청을 보낼 수 있는 통신이다.

- 즉, 클라이언트와 서버 양쪽에서 서로에게 데이터 전달을 하는 방식의 양방향 통신이다.

- 보통 스트리밍이나 실기간 채팅 등 실시간으로 데이터를 주고 받아야 하는 경우 Connection을 자주 맺고 끊는 HTTP통신 볻 소켓 통신이 적합하다. 소켓 통신은 계속해서 Connection을 들고 있기 때문에 HTTP 통신에 비해 많은 리소스가 소모된다.

 

정리

- 자주 데이터를 주고 받는 환경이 아닌 경우 HTTP 통신을 통해 받는 것이 유리하다.

- 자주 데이터를 주고 받아야 하는 환경에서는 소켓 통신이 유리하다.

- HTTP 통신은 사용자가 서버에 요청을 보내는 단방향 통신인 반면, 소켓 통신은 양방향 통신이다.

 

 

출처 : https://kotlinworld.com/75

'IT지식' 카테고리의 다른 글

IT지식) .env  (0) 2024.07.23
IT지식) 네이밍 컨벤션 (Naming Convention)  (0) 2023.01.13
IT지식) Cookie , Session  (0) 2022.11.23
IT지식) GET vs POST  (0) 2022.11.23
IT지식) 정적언어 vs 동적언어  (0) 2022.11.20